• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >微信小程序 > 开发微信服务器接口的实例教程

开发微信服务器接口的实例教程

作者:匿名 字体:[增加 减小] 来源:互联网

匿名通过本文主要向大家介绍了微信开发,服务器,接口等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
因ERP系统需要与微信公众号做数据接口,现准备做一个中间服务器。
开发环境:XE10
使用控件:IdHTTPServer

因刚开发阶段,在路由路上直接做了测试机的80端口转发,申请微信公众测试号后,却一直配置失败。跟踪发现是服务器无法收到微信发来的GET请求。代码如下:

Delphi/Pascal code?

unit Unit1;

interface
 
uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, IdBaseComponent,
  IdComponent, IdCustomTCPServer, IdCustomHTTPServer, IdHTTPServer, IdContext,
  IdHashSHA, IdGlobal;
 
type
  TForm1 = class(TForm)
    IdHTTPServer1: TIdHTTPServer;
    Button1: TButton;
    Memo1: TMemo;
    procedure Button1Click(Sender: TObject);
    procedure IdHTTPServer1CommandGet(AContext: TIdContext;
      ARequestInfo: TIdHTTPRequestInfo; AResponseInfo: TIdHTTPResponseInfo);
  private
    { Private declarations }
  public
    { Public declarations }
    function SHA1(Input: String): String;
    function CheckSignature(ARequestInfo: TIdHTTPRequestInfo): boolean;
  end;
 
var
  Form1: TForm1;
Const
  Token = 'weixin';
 
implementation
 
{$R *.dfm}
 
function TForm1.SHA1(Input: String): String;
begin
  with TIdHashSHA1.Create do
  try
    Result := LowerCase(HashBytesAsHex(TidBytes(Bytesof(Input))));
  finally
    Free;
  end;
end;
 
 
function TForm1.CheckSignature(ARequestInfo: TIdHTTPRequestInfo): boolean;
var
  signature, timestamp, nonce, echostr: String;
  tmpstr: TStringList;
  temp: String;
begin
  tmpstr := TStringList.Create;
  try
    signature := ARequestInfo.Params.Values['signature'];
    timestamp := ARequestInfo.Params.Values['timestamp'];
    nonce := ARequestInfo.Params.Values['nonce'];
 
    echostr := ARequestInfo.Params.Values['echostr'];
    tmpstr.Add(Token);
    tmpstr.Add(timestamp);
    tmpstr.Add(nonce);
    tmpstr.Sort;
    temp := StringReplace(tmpstr.text, #13#10, '', [rfReplaceAll]);
    Result := SHA1(temp) = signature;
  finally
    tmpstr.Free;
  end;
end;
 
 
procedure TForm1.Button1Click(Sender: TObject);
begin
  IdHTTPServer1.Active := True;
end;
 
procedure TForm1.IdHTTPServer1CommandGet(AContext: TIdContext;
  ARequestInfo: TIdHTTPRequestInfo; AResponseInfo: TIdHTTPResponseInfo);
begin
  Memo1.Lines.Add('123');
  if CheckSignature(ARequestInfo) then
  if ARequestInfo.Params.Values['echostr'] <> '' then
  begin
    Memo1.Lines.Add(ARequestInfo.Params.Values['echostr']);
    AResponseInfo.ContentType := 'text/html; charset=UTF-8';
    AResponseInfo.ContentText := ARequestInfo.Params.Values['echostr'];
  end;
end;
 
end.

以上就是开发微信服务器接口的实例教程的详细内容,更多请关注其它相关文章!

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 微信小程序开发:在Gulp的基础上构建的工作流程
  • 微信小程序开发:企业开发小程序的必要性
  • 微信小程序开发之页面跳转方式
  • 微信小程序开发之animation动画实现
  • 关于微信开发小程序的一点个人总结
  • 开发微信服务器接口的实例教程
  • 微信开发之录音功能
  • 微信开发之开发者模式
  • 微信公众平台开发之小黄鸡API
  • 小程序开发不可或缺的Flex布局模式

相关文章

  • 微信小程序开发优化建议
  • 微信小程序模拟下拉菜单开发实例
  • 微信小程序WebSocket协议说明及使用示例分享
  • 微信小程序聊天室demo代码
  • 小程序自定义组件的实现方法(代码)
  • 微信小程序 地图(map)实例详解
  • 小程序实现语音识别经验分享
  • 微信小程序开发:Flex布局
  • 微信小程序的http请求封装详解
  • 微信小程序:如何实现tabs选项卡效果示例

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 微信小程序常用快捷键整理总结
    • 微信小程序实现手指缩放图片代码分享
    • 小程序开发之如何使用cookiejar记住帐号
    • 微信小程序0.11.122100 版本更新详情介绍
    • 快速开发微信小程序
    • wxss字体组件及API的思维导图详细介绍
    • 小程序之实现主页的tab选项功能的方法
    • 有关江南的文章推荐4篇
    • 微信小程序路由跳转的三种形式详解
    • 微信小程序的圆形进度条怎么做

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有