thinkPHP5.0开发微信小程序登录接口signature验证失败

3 篇文章 0 订阅
2 篇文章 0 订阅

我用TP5开发微信小程序登录接口的时候,在校验签名signature那遇到了个坑,一直校验失败,找了很久才发现

原因是:tp的input方法会自动转移html字符,比如’”’转成了 &quote; ,所以导致了失败:

本来的rawData

{"nickName":"小小黑","gender":1,"language":"en","city":"Zhanjiang","province":"Guangdong","country":"CN","avatarUrl":"http://wx.qlogo.cn/mmopen/vi_32/iaFp2syscJNYgalastnQ3bnYt2l4cURSX7p7CeZ7SkNLa32yqBHsXITPibqrJl7z6mYYIibmCLlwtoOwCp0nMibIgA/0"}WYrl3b8xiPuJlOnY/zCXdw==

TP中input方法过滤过的rawData

{"nickName":"小小黑","gender":1,"language":"en","city":"Zhanjiang","province":"Guangdong","country":"CN","avatarUrl":"http://wx.qlogo.cn/mmopen/vi_32/iaFp2syscJNYgalastnQ3bnYt2l4cURSX7p7CeZ7SkNLa32yqBHsXITPibqrJl7z6mYYIibmCLlwtoOwCp0nMibIgA/0"}WYrl3b8xiPuJlOnY/zCXdw==

所以校验方法需要这样写:

$signature2 = sha1(htmlspecialchars_decode($rawData) . $session_key);

if ($signature2 !== $signature) return ret_message("signNotMatch");

后续会给一个完整的登录流程代码(前端+ThinkPHP5.0)

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
thinkphp开发微信小程序一键生成平台系统正版源码是一种基于thinkphp框架开发的专门用于生成微信小程序的系统源码。通过该系统,用户可以快速创建自己的微信小程序,无需编写复杂的代码,仅需要进行简单的配置和定制即可生成个性化的微信小程序。 该系统源码具有正版授权,保证了源码的合法性和可靠性。用户购买正版源码后,可以得到全面的技术支持和更新保障,确保系统的稳定运行和功能的持续优化。 使用该系统源码,用户可以实现以下功能: 1. 快速生成微信小程序:系统提供了丰富的模板和组件,用户可以根据自己的需求进行选择和定制,快速生成符合自己品牌风格的微信小程序。 2. 简单易用的配置:用户可以通过后台管理界面进行简单的配置,包括页面布局、颜色搭配、功能模块等,无需写代码即可完成设置。 3. 数据接口对接:系统提供了与微信接口的对接功能,可以实现小程序与后台数据库的数据交互,包括用户信息、商品信息、订单信息等。 4. 模块扩展和定制:系统允许用户根据自己的需求进行模块扩展和定制,可以添加特定的功能模块或者自定义页面。 5. 数据统计和分析:系统提供了数据统计和分析功能,可以统计用户访问量、用户行为等数据,为用户提供数据支持。 该系统源码的使用可以极大地简化微信小程序开发流程,节省开发时间和成本,同时提供了丰富的功能和扩展性,使用户可以根据自己的需求定制自己的微信小程序

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值