首先我们参考官网的文档介绍,支持是80端口和443端口
https://developers.weixin.qq.com/doc/offiaccount/Basic_Information/Access_Overview.html
登录微信公众号平台,查看开发者相关信息,主要需要Token,注意需要启用
在该订阅号回复设置回调地址,按照提示输入相关信息,url转发接口支持非80、443端口,token需要回复上面获取的Token,服务器会自动完成认证并将参数转发到配置url
然后将获取的回调地址配置到微信公众号平台即可完成转发配置,并设置明文模式
转发接口实现要求,请求方式post,Content-Type: application/json。配置多个转发地址时都会调用配置url,但是只返回最快响应内容给订阅号,由于微信官方只支持5s内响应,所以需要保证转发url响应时间在5s内,否则无法正常回复消息。参数和响应与官网保持一致,请参考:
https://developers.weixin.qq.com/doc/offiaccount/Message_Management/Passive_user_reply_message.html
java实现转发接口示例:
@RequestMapping("/test")
public String test(@RequestBody WxParamDto body) {
WxParamDto result = WxParamDto.builder()
.ToUserName(body.getFromUserName())
.FromUserName(body.getToUserName()).Content("你好")
.MsgType("text")
.CreateTime(DateUtil.currentSeconds()).build();
String jsonString = JSONObject.toJSONString(result, JSONWriter.Feature.FieldBased);
return jsonString;
}@Data
@Builder
public class WxParamDto {
private String FromUserName;
private Long CreateTime;
private String MsgType;
private String Content;
private String MsgId;
private String MsgDataId;
private String ToUserName;
}
可以搭配内网穿透使用,将请求转发到本地,方便进行调试
零成本接入聊天机器人
只需要在设置回调地址的时候回复url为以下地址即可
https://ydfm.cc/madmin/other/callback/robot