# 检验登录态
接口应在服务器端调用,详细说明参见服务端API。
# 接口说明
# 接口英文名
checkSessionKey
# 功能描述
校验服务器所保存的登录态 session_key 是否有效。为了保持 session_key 私密性,接口不明文传输 session_key,而是通过校验登录态签名完成。
session_key 具有唯一性,在使用小程序时,同一用户在同一时刻仅有一个有效的 session_key。 通过 code2Session 接口获得的用户 session_key 拥有一定的时效性。 除了过期失效外,触发获取临时登录凭证 code 的操作(小程序登录 和 数据预拉取)也可能会生成新的登录态 session_key,从而使旧的 session_key 被顶替而失效。
为了处理以上失效情况,可以通过本接口校验用户 session_key 的有效性。
# 调用方式
# HTTPS 调用
GET https://api.weixin.qq.com/wxa/checksession?access_token=ACCESS_TOKEN&signature=SIGNATURE&openid=OPENID&sig_method=SIG_METHOD
# 第三方调用
调用方式以及出入参和HTTPS相同,仅是调用的token不同
该接口所属的权限集id为:18
服务商获得其中之一权限集授权后,可通过使用authorizer_access_token代商家进行调用
# 请求参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
access_token | string | 是 | 接口调用凭证,该参数为 URL 参数,非 Body 参数。使用access_token或者authorizer_access_token | |
openid | string | 是 | 用户唯一标识符 | |
signature | string | 是 | 用户登录态签名,用session_key对空字符串签名得到的结果。即 signature = hmac_sha256(session_key, "") | |
sig_method | string | 是 | 用户登录态签名的哈希方法,目前只支持 hmac_sha256 |
# 返回值
返回的 JSON 数据包
属性 | 类型 | 说明 |
---|---|---|
errcode | number | 错误码 |
errmsg | string | 错误信息 |
# 调用示例
示例说明: checkSessionKey请求示例
# 请求数据示例
GET https://api.weixin.qq.com/wxa/checksession?access_token=OsAoOMw4niuuVbfSxxxxxxxxxxxxxxxxxxx&signature=fefce01bfba4670c85b228e6ca2b493c90971e7c442f54fc448662eb7cd72509&openid=oGZUI0egBJY1zhBYw2KhdUfwVJJE&sig_method=hmac_sha256
# 返回数据示例
{"errcode": 0, "errmsg": "ok"}
# 错误码
错误码 | 错误描述 | 解决方案 |
---|---|---|
0 | ok | ok |
87009 | invalid signature | 无效的签名 |