admin 管理员组

文章数量: 1184232

微信账号登陆小程序

我们先要实现支付流程,首先必须要做的是,给小程序实现微信登陆的功能。大家回顾一下第一幅时序图,也就是创建支付订单的那副时序图。首先由小程序发起请求给商户系统,让商户系统申请创建支付订单。各位同学你仔细想一想,如果是POSTMAN软件,或者HTTPClient这样的客户端程序,模拟小程序发出请求,他们根本都不是真实的用户,而且也没有登陆小程序,所以商户系统必须要加以判断。

其实想要判断到底是不是真实的用户发来的请求,我们只需要判断两样东西即可。一个是OpenID,另一个是Token字符串。用户在手机上用微信账号登陆小程序的时候,会产生一个唯一的OpenID值,商户系统会记录下这个OpenID值。如果商户系统接收到的请求里面没有OpenID值,或者OpenID值跟数据库里面的对不上,就说明这不是一个合法的用户。那么商户系统就不用理会这个请求。仅仅OpenID能核对上还不行,我还要看看发起请求的用户是不是已经登陆了小程序。只有用户登陆小程序之后,才可以证明是本人下单支付,所以商户系统必须要判断用户到底有没有登陆小程序。因为我们搭建的后端项目,整合了Shiro和JWT技术,所以成功登陆小程序的用户,后端系统都会返回一个Token字符串。小程序每次发起请求的时候都要带上这个令牌字符串,告诉renren-fast后端系统,我现在已经登陆了。当然了,后端系统也要验证这个Token字符串是否有效,以及过没过期。

  1. 表单校验:使用ValidatorUtils.validateEntity(form)对传入的表单数据进行校验。
    获取微信登录信息:构造了一个包含微信小程序的appId、appSecret、用户登录凭证js_code和授权类

本文标签: 字符串 登陆小程 编程