请求服务器获取微信openid,Golang通过小程序获取微信openid的方法示例

为什么要获取小程序的 openid

在开发微信小程序的过程中,小程序可以通过微信官方提供的登录能力方便地获取微信提供的用户身份标识,快速建立小程序内的用户体系。那么这个用户身份标识就是 openid。

小程序获取 openid 的流程

那么小程序获取 openid 的流程具体如下,这里我简化了一下,因为我们只需要获取到 openid 即可,具体可以参考 这里

1-20060G20624.png

我们需要在小程序中调用 wx.login() 获取 code 码,然后将这个 code 码发送给后端,后端带着这个 code 码和 appid,appsecret 向微信接口发起 http 请求获取 openid。

注意事项

在开发的小程序中的 AppID 一定要和后端使用的 AppID 保持一致,否则会获取 openid 失败

1-20060G20625.png

我们请求的微信 API 为 auth.code2Session ,

请求地址为:

GET https://api.weixin.qq.com/sns/jscode2session?appid=APPID&secret=SECRET&js_code=JSCODE&grant_type=authorization_code

所需的四个参数为:

属性

类型

默认值

必填

说明

appid

string

小程序 appId

secret

string

小程序 appSecret

js_code

string

登录时获取的 code

grant_type

string

授权类型,此处只需填写 authorization_code

js_code 就是我们通过 wx.login 得到的 code,grant_type 为 authorization_code,只剩下 appid 和 secret 需要我们登录微信公总平台 里面找

1-20060G20625-50.png

小程序代码演示

为了方便操作,我们在 index 页面编写了一个 button,通过 button 触发事件

?

然后编写事件函数:

?

那么,在小程序中发送 http 请求强制要求地址必须为 https,由于我们在开发中,我们可以把强制 https 的设置关闭

1-20060G20626.png

Go 语言后端代码演示

小程序发过来的数据和去微信 API 获取的数据都是放在 http body 里,所以我们要从 body 获取

?

运行结果

运行代码,在小程序中点击:

1-20060G20626-50.png

结果:

1-20060G20626-51.png

到此这篇关于Golang通过小程序获取微信openid的方法示例的文章就介绍到这了,更多相关Golang获取openid内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://www.jianshu.com/p/fe837d1ec47e

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值