注册

小程序游戏开发用户登录态签名,小程序游戏签名算法示例

2020-09-27
导读:小程序的一部分后台(HTTP)接口要求验证用户登录态。开发者在调用时需提供以session_key为密钥生成的签名。其中session_key是指通过wx.login 获得的登录态。...

  用户登录态签名

  小程序的一部分后台(HTTP)接口要求验证用户登录态。开发者在调用时需提供以session_key为密钥生成的签名。其中session_key是指通过wx.login 获得的登录态。

  签名算法

  目前支持的签名算法是 hmac_sha256。 对于POST请求,开发者生成签名的算法是:

小程序游戏开发用户登录态签名,小程序游戏签名算法示例

  signature = hmac_sha256( post_data, session_key )

  其中post_data为本次POST请求的数据包。特别地,对于GET请求,post_data等于长度为0的字符串。

  signature = hmac_sha256( "", session_key )

  签名示例

  例如开发者需要请求的HTTP(POST)接口,其中请求包为一个json字符串。

  curl -d '{"foo":"bar"}' 'https://api.weixin.qq.com/some_api?access_token=xxx&openid=xxx&signature=???&sig_method=hmac_sha256'

  开发者需要计算出signature参数。假设用户当前有效的session_key 为 :

  'o0q0otL8aEzpcZL/FT9WsQ=='

  则开发者生成签名应该是

  hmac_sha256('{"foo":"bar"}', 'o0q0otL8aEzpcZL/FT9WsQ==') = 654571f79995b2ce1e149e53c0a33dc39c0a74090db514261454e8dbe432aa0b

  开发者服务器发起的HTTP请求

  curl -d '{"foo":"bar"}' 'https://api.weixin.qq.com/some_api?access_token=xxx&openid=xxx&signature=654571f79995b2ce1e149e53c0a33dc39c0a74090db514261454e8dbe432aa0b&sig_method=hmac_sha256'

  session_key 合法性校验

  我们提供接口供开发者校验服务器所保存的登录态session_key是否合法。 为了保持session_key私密性,我们提供的校验接口本身不直接明文session_key,而是通过校验登录态签名完成。

  接口地址

  请求方法:GET

  https://api.weixin.qq.com/wxa/checksession?access\_token=ACCESS\_TOKEN&signature=SIGNATURE&openid=OPENID&sig\_method=SIG\_METHOD

  调用示例

  curl -G 'https://api.weixin.qq.com/wxa/checksession?access_token=OsAoOMw4niuuVbfSxxxxxxxxxxxxxxxxxxx&signature=fefce01bfba4670c85b228e6ca2b493c90971e7c442f54fc448662eb7cd72509&openid=oGZUI0egBJY1zhBYw2KhdUfwVJJE&sig_method=hmac_sha256'

  参数说明

  参数必填说明

  access_token是接口调用凭证

  openid是用户唯一标识符

  signature是用户登录态签名

  sig_method是用户登录态签名的哈希方法

  buffer是托管数据,类型为字符串,长度不超过1000字节

  返回结果

  正确时的返回JSON数据包如下:

  {"errcode":0,"errmsg":"ok"}

  错误时的返回JSON数据包如下(示例为签名错误):

  {"errcode":87009,"errmsg":"invalid signature"} 点击了解更多 小程序游戏开发教程

重磅推荐:小程序开店目录

第一部分:小商店是什么

第二部分:如何开通一个小商店

第三部分:如何登录小商店

第四部分:开店任务常见问题

第五部分:小商店可以卖什么

第六部分:HiShop小程序特色功能

第七部分:小程序直播

第八部分:小程序收货/物流

第九部分:小程序怎么结算

第十部分:小程序客服

第十一部分:电商创业

第十二部分:小程序游戏开发