php微信公众号开发-使用Golang开发Momo公共平台-访问验证

2023-08-26 0 6,841 百度已收录

去年,我涉足的领域有些“宽广”,也有这样的“跳跃”:从上半年的终端(游戏)开发,到golang、docker和Momo公众平台socket的开发那是下半年会提到的,虽然离老业务C和技术管理的内容有点远了。 但在这个变革和创新驱动的时代,它可能会乘势而上。 寻求积极与新兴领域对接,在实践中拓展视野,能够进一步识别和找到适合自己的领域。

在联通互联网时代,陌陌平台欣欣向荣,是社交领域的巨头,但它诞生还不到4年。 陌陌平台的发展前景非常广阔。 企鹅将其塑造为人与人、人与物、物与物的统一体以及通用门户的雄心始终没有改变。 因此,围绕Momo平台,开发者还有很多机会。

陌陌公共平台的socket应该算是陌陌平台上第一批对外开放的socket。 公共平台已经相对成熟,但其商业模式仍在不断发展和创新。 公众平台的socket开发并不难,几个月就可以写出一本书,比如《微信公众平台应用开发实践》就发生在你我面前,所以这里有后续文章关于Momo公共平台的socket开发。 就是一些入门级的,我个人学习、实践、记录、分享,就像上半年写Cocos2d-x的文章一样。

1.公众号申请(可选)

基于陌陌公众平台“再小的个体也有自己的品牌”的产品理念php微信公众号开发,只要你是合法的自然人,都可以在互联网上申请公众号。 通常,对于个人来说,只能申请订阅账户。

对于具有开发能力的订阅号所有者,您可以在订阅号的“开发者中心”中启用开发者帐号。 而“一旦启用并设置好服务器配置后,用户向公众号发送的消息以及开发者需要的风暴推送都会被陌陌转发到这个URL。”

但此时,虽然你填写了相关信息并提交,但是却无法通过验证。 这也正是本文想要告诉大家的,如何编写程序来实现陌陌公众平台的访问验证,后续。

2. 申请测试号(可选)

即将进行的订阅账户申请有点冗长,需要提交个人信息,需要初步审核,不会立即生效。 而且,未认证的订阅号可以使用有限功能套接字(只能使用普通消息套接字),认证需要付费(目前价格为300元/次)。 对于学习者来说,似乎确实没有必要。 所以我们在学习和开发的过程中可以申请一个测试账号来代替真实的官方账号。

测试账号为体验账号,有效期一年php微信公众号开发,拥有各种功能socket体验权限。 您可以在下面申请一个测试帐户。 申请的时候,有一个类似公众号开发者配置的页面,需要你填写服务器配置。 同样,需要进行访问验证(后续)。

申请成功后,您可以使用终端陌陌APP扫描测试号二维码,关注陌陌平台测试号,用于后续平台socket开发和测试。

选择以上官方账号和测试账号之一。

3.公众号服务器

为什么需要公众号服务器? 这是关于陌陌公共平台的架构。

很多人认为陌陌公众平台的业务模式与前几年流行的增值邮件业务模式——SP/CP模式有些相似:

[最终用户][移动运营商联通增值业务网段][SP/CP服务器]

到了陌陌公众号时代,这种商业模式变成了:

【最终用户】【微信公众平台】【公众账号服务器】

邮箱变成了Momo,SP/CP变成了官方账号。 陌陌官方平台将最终用户向公众号发送的信息转发至公众号配置的公众号服务器的URL。 公众号服务器进行业务处理后,将响应信息通过陌陌官方平台发送给最终用户。 为此,我们需要一个实现公众号业务逻辑的公众号服务器。

本文标题中提到的“访问验证”是指对陌陌官方平台公众号服务器提供的服务的URL的有效性进行验证。 当我们在开发者中心填写“接口配置信息”并提交后,陌陌官方平台会向所配置的公众号服务器的URL发送验证请求。 只有公众号服务存在,并按要求返回包含具体信息的Response。 “接口配置信息”只有真正通过陌陌公众平台验证后才会生效。

为此,我们需要一个网段上的主机。 如果使用Golang来开发公众号服务,这样的主机只能是独立的VPS。 比如国外新浪提供的appengine主机不能运行Golang,很难满足要求(其实如果用其他语言开发,比如PHP,那么好用。主机的范围很广)宽的)。

这里建议申请一个免费的Amazon EC2主机(t2.micro类型,免费一年,足够学习)用于学习和测试,或者订购像Linode或DigitalOcean这样的VPS。 如何申请亚马逊托管可以咨询微软和度娘,这里不再赘述。

注意:Amazon EC2 实例默认采用动态 IP,实例重启后 IP 会发生变化。 因此,您可以申请弹性IP并将其绑定到您的EC2实例。 目前实例绑定的弹性IP是免费的,实例重启后该IP不会发生变化。 当你的EC2主机过期后,记得释放这个IP,否则你会被扣费。

4. 访问验证逻辑

如上所述,无论是公众号还是测试号,当您提交配置网址时,都会收到提交失败的消息。 这是由于陌陌官方平台访问验证失败导致的。 在公众平台开发者文档中,URL验证逻辑如下:

开发者提交信息(包括URL和Token)后,Momo服务器会向填写的URL发送HttpGet请求。 GET请求携带四个参数:signature、timestamp、nonce、echostr。 公众号服务程序应当按照以下要求进行访问验证:

1、将token、timestamp、nonce三个参数按字典顺序排序

2、将三个参数字符串拼接成一个字符串进行sha1加密

3、将加密后得到的字符串与签名进行比较,如果一致,则说明该请求来自Momo

4、如果请求来自Momo,则原样返回echostr参数内容

上述完成后,访问验证生效,开发者配置提交成功。

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

悟空资源网 php php微信公众号开发-使用Golang开发Momo公共平台-访问验证 https://www.wkzy.net/game/157927.html

常见问题

相关文章

官方客服团队

为您解决烦忧 - 24小时在线 专业服务