十行代码完成公众号对话,VFP的能力就是这么强悍,你学会了吗?
微信公众号在VFP开发其实非常容易,跟着猫猫的节奏走就一定能走通,当然也少不了猫框的加持,很多老狐其实抱着开放的心态去接触新的东西,才会发现世界也就不一样了。VFP有很多BS化方案了,但目前来看,我的方案快速上手,开发速度极快。
让你的微信公众号能够回复消息
用户打开公众号,在底部对话框发文字,你的程序接收处理
测试号开发的准备工作
1 申请测试号
https://mp.weixin.
2 申请一个内网穿透账号〔有云服务器就在云服务器开发就不用内网穿透了〕
3 配置好端口转发, qiyusoft.free. :80->127.0.0.1:801
qiyusoft 为你自己申请的子域名。
4 运行猫框环境设置,打开调试服务器。
5 打开浏览器,输入http://qiyusoft.free.,如果有响应,说明内网穿透成功。
微信后台配置
域名填写二级域名即可
回调URL
填写刚刚内网穿透的域名和实际调用的类
猫框设置
wxsetting.dbf填写上图中的appid,appsercert,appuser 填写自己喜欢的名字,我这里填写bluesky;
编写一个微信响应后台程序
*微信自动回复默认调用Answermsg, DoAnyThing为勾子方法
Define Class ctl_wxcenter2 As weixinApi Of Locfile("weixinApi.prg")
*-- 事件处理中心 返回XML消息格式,或返回空消息,再调用主动接口
Procedure DoAnything
Lparameters ToUserName,FromUserName,MsgText,MsgType,MsgId
?msgtxt
Endproc
Enddefine
框架约定类名等于文件名,保存为ctl_wxcenter2.prg controller目录
现在往微信测试号发一条消息
可以看到,我们的程序响应了,把消息内容显示出来了,它是XML格式提示故障,是因为我们没有回复它的消息
响应
如何回复一条信息呢
Procedure DoAnything
Lparameters ToUserName,FromUserName,MsgText,MsgType,MsgId
lcContent="感谢关注麦熊科技,你将收到消费、充值时"
*-- text消息格式 注意 收发人是要转过来
TEXT TO lcMSG NOSHOW TEXTMERGE PRETEXT 1+2
<xml>
<ToUserName><![CDATA[<<FromUserName>>]]></ToUserName>
<FromUserName><![CDATA[<<ToUserName>>]]></FromUserName>
<CreateTime><<Tton(DATETIME())>></CreateTime>
<MsgType><![CDATA[text]]></MsgType>
<Content><![CDATA[<<lcContent>>]]></Content>
</xml>
ENDTEXT
Return lcMSG
Endproc
开发完成,就是这么简单,你也可以根据接收到的消息,回复不回的内容啦。
各位狐友看到这里,有没有觉得代码很爽,只需要写一点点代码,我们就能够与公众号对话啦。这就是使用框架的努力,很多人问用框架会不会限制住自己的手脚,框架本身是没有实体的,你原来是什么开发习惯,基本也是一致,只不过在BS不要用messagebox,wait 等打断程序运行的指令就好。