微信小程序本地存储与登录页面处理实例详细讲解
667
2022-10-17
Express中间件针对微信小程序登录场景来解密微信用户信息数据
Express-weapp-auth
Express middleware to decrypt wechat userInfo data for weapp login scenario.
Installation
# via Githubnpm install xixilive/express-weapp-auth --save# via npmnpm install express-weapp-auth --save
Usage
// basic exampleimport {middleware} from 'express-weapp-auth'const app = require('express')()app.post( '/session/:code', middleware('appId', 'appSecret'), (req, res, next) => { const {openId, sessionKey, userInfo} = req.weappAuth //your logic here })// advance exampleapp.use( '/weapp/session/', middleware('appId', 'appSecret', (req) => { return req.body }, {dataKey: 'customDataKey'}), (req, res, next) => { const {openId, sessionKey, userInfo} = req.customDataKey //your logic here })
Middleware
// all argumentsmiddleware('appId', 'appSecret' [, paramsResolver, options])// without optional argumentsmiddleware('appId', 'appSecret')// without options argumentmiddleware('appId', 'appSecret' paramsResolver)// without paramsResolver argumentmiddleware('appId', 'appSecret' options)
Arguments
appId: required, weapp app ID appSecret: required, weapp app secret paramsResolver: optional, a function(req){} to resolve auth-params for request object options: optional, {dataKey: 'the key assign to req object to store decrypted data'}
ParamsResolver(req)
It will use a built-in default resolver to resolve params for request if there has no function passed to middleware function. and the default function resolves params in a certain priority:
req.body with the highest priority req.query with middle priority req.params with the lowest priority
And it expects the resolver function to return an object value with following structure:
{ code: 'login code', rawData: 'rawData', signature: 'signature for rawData', encryptedData: 'encrypted userInfo', iv: 'cipher/decipher vector'}
For more details about this, please visit 微信小程序 API
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~