微信公众号使用后端代码接入开发指南

1. 部署到服务器一套后端服务

要求:外界通过get请求可以访问到该服务,并且该地址只返回文本:hello, this is handle view,这就是下面这段代码的意思
在这里插入图片描述
这段代码的意思就是服务匹配到/wx的get请求,返回文本hello, this is handle view

2. 修改配置

在这里插入图片描述
进入基本配置,点击修改配置
在这里插入图片描述
在保存的时候会提示错误,因为代码还没写完,继续之前的代码
这是官方的逻辑图(可跳过)
在这里插入图片描述
这是官方的代码(下面两张图可跳过,分析不要跳过)
在这里插入图片描述
在这里插入图片描述
分析:注意,这段代码的意思就是将get请求路径中的参数获取,然后通过算法和微信给的签名匹配一下,如果是一样的就可以绑定上,并且最后需要返回文本类型的echostr,这个参数就是请求你的路由的时候,get请求的参数上存在的,如果你足够自信,上面的代码都可以放弃,这个请求直接返回get请求的echostr也可以(不推荐,因为来源可能会非微信服务器,但是确实可以)
部署上面代码后,点击保存就可以保存成功,点击启用就可以开始使用,如果其他语言可以考虑用ai转换一下,
注:token就是你配置填的那个
此时后台其他部分就会显示如图所示,代表已经成功
在这里插入图片描述

3. 开始通过代码对接微信平台(以自动回复举例)

首先在基本配置的ip白名单中添加你服务的地址(刚才的位置),否则无法收到请求
在这里插入图片描述
这段代码的意思是,之前的get请求地址,要改成post请求才可以接收到刚才的消息,(注:代码里面没讲,但是实际返回的路径中还是会有get请求的那些签名之类的东西,你也可以验证之后再做数据处理),然后body是xml格式,如果你当初设置加密格式为不加密(详细见上面第二点基本配置的第二张图),你将会获得以下xml

<xml>
 <ToUserName><![CDATA[粉丝号]]></ToUserName>
 <FromUserName><![CDATA[公众号]]></FromUserName>
 <CreateTime>1460541339</CreateTime>
 <MsgType><![CDATA[text]]></MsgType>
 <Content><![CDATA[test]]></Content>
</xml>

如果你选择加密,可能只会有一个ToUserName有值,具体解决办法参考官方文档https://developers.weixin.qq.com/doc/offiaccount/Message_Management/Message_encryption_and_decryption_instructions.html
具体消息参数为https://developers.weixin.qq.com/doc/offiaccount/Message_Management/Receiving_standard_messages.html
具体操纵肯定要将ToUserName和FromUserName位置换一下,即可实现向发来的用户发送消息,但是要发送出去,你的接口必须返回string类型的xml文件,格式和接收到的一样,比如说

<xml>
 <FromUserName><![CDATA[公众号]]></FromUserName>
 <ToUserName><![CDATA[粉丝号]]></ToUserName>
 <CreateTime>1460541340</CreateTime>
 <MsgType><![CDATA[text]]></MsgType>
 <Content><![CDATA[test]]></Content>
</xml>

而且必须要在5秒内回复,超过时间微信会断开自动重连,可以考虑暂时返回success或者空字符串,不可返回xml的Content为空

以上是我配置完成之后写的,可能会遗漏一些东西,欢迎大家指正

  • 10
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值