https://developers.weixin.qq.com/miniprogram/dev/api/startSoterAuthentication.html微信已经提供后台接口,用于可信的密钥验签服务,微信将保证该接口返回的验签结果的正确性与可靠性,并且对于 Android root 情况下该接口具有上述特征(将返回是否保证root情况安全性)。
接口地址:http://api.weixin.qq.com/cgi-bin/soter/verify_signature?access_token=%access_tokenpost 数据内容(JSON 编码):{"openid":"$openid", "json_string" : "$json", "json_signature" : "$sign" }
其中json_string使用的是指纹验证返回的resultJSON,json_signature使用的是resultJSONSignature。
access_token是通过如下文档方式获取的https://developers.weixin.qq.com/miniprogram/dev/api/token.html#%E8%8E%B7%E5%8F%96-access_tokenopenid应该也是没有错的。但是调用这个接口总是返回48001错误。
{ errcode: 48001, errmsg: 'api unauthorized hint: [QlUlKa0358vr47!]' }请问这是为什么?请不要再问我是否已获得授权,谢谢。
附上请求打印日志,以下数据个别字符已被修改过:【请求地址】: https://api.weixin.qq.com/cgi-bin/soter/verify_signature?access_token=16_dJdFEpg1kNR5X8XXXXXXXXXXmj3xdaYfyN7-6NwJWFcKiPRfGJSxUXXXXXXX0Lw01QamXYR2hHP6Z_eyRp3EIyKYEkwj6BwwgDk3b5bLebEUY-eyi26IegGCAKhAHAGEO
【请求参数】:{"openid":"oXXjk-5ayXXXX-fhbJzOXXXXXXXXX","json_string":{"counter":"131","cpu_id":"4E3XXXX22-70F8-4843-B094-DCXXXXX41E11","raw":"fingerPrintSetting","uid":"ca4d97415986a0600000000669378"},"json_signature":"rJuaGrx0XXXXXXXXXwYYr53WjoS4xifaPSoVc5ycjZHkEUJZOJVPDjLTOoFl/HQXXXXXXXXXeHah3g4+Z7s6Y7g+EdUFUcGc5WdOcdXV546SIaTYqS2vf4rgkh922Zp/jxQ0Tc0P9NmlRZGnxaXIyaitYz/8W4qXXXXXXXXMnv5n0XXxy+ZaGsAISgeJVYdA56xRduGEWCEaqIAHQse0Md934JRMq3Bg2UC+/KMA/juQXXXXXXXXXXXFmzrShqlOfA=="}
【错误信息】:{"errcode":48001,"errmsg":"api unauthorized hint: [vfJFRA03044682!]"}
更新:2018-12-19 19:16:53
顶一下
48001API 功能未授权,请确认微信小程序已获得该接口
我就想问问,指纹识别服务器验证接口是否在内测,或者需要后台开通才拥有该接口,请帮忙确认下,谢谢!
目前我们也是先屏蔽服务器验证,等可用后再开放。也不会用在支付等重要场景操作,请放心!
微信小程序开发问题解答
微信小程序开发者回答:
json_string,是个字符串,我看你上面的示例不是 string,加个 JSON.stringify 试试呢
微信小程序开发者回答:
其实您可以搜索一下,目前微信开发者社区、百度、Google,我真的搜索过了,大家都是这样,而且都没有解决。我目前没有搜索到有人有相关的案例解决的了。
微信小程序开发者回答:
是否用错其他账号的access_ token了?
本文网址:http://www.91bianli.com/weixinxiaochengxu/42735.html