H5开发还不理解—微信小程序授权登陆

signed

QiShunwang

“诚信诚信为本、消费者高过一切”

新闻报道报导管理方法管理中心

手机上手机微信手机微信微信小程序授权登陆2020/10/5 9:14:10   来源于于: 手机上手机微信手机微信微信小程序登录授权

大伙儿在最新项目中 登录 授权网页页面网页页面 都尽量要传输token值。
一般商品详尽信息内容网页页面网页页面的商品本人个人收藏 加上购物车。
[标识:內容1]
购物车网页页面网页页面都务必传输token。

token是什么

token是前端开发开发设计鉴权的一种方式 token由后端开发开发设计转换成 是有时候候效性的。

手机上手机微信手机微信微信小程序如何登录授权 获得token

第一步 登录流程
前端开发开发设计— 后端开发开发设计— 腾讯互联网网络服务器
wx.login— wx.request— 后端开发开发设计— 手机微信微信小程序(腾讯)互联网网络服务器
手机微信微信小程序wx.login官方网网文字文本文档developers.weixin.qq/miniprogram/dev/api/open-api/login/wx.login.html

第二步
登录---- 检测不是是申请办理申请注册— 没有申请办理申请注册先得到顾客信息内容內容进行申请办理申请注册 加载公司数据信息信息内容库 — 进行登录
将登录弹出窗口封裝成一个模板 进行引进
最开始封裝好乞求插孔文本文档

var API_BASE_URL api.it120.cc 
var subDomain mydomainname //专享域名
let request (url, needSubDomain, method, data) {
 const _url API_BASE_URL (needSubDomain ? / subDomain : ) url
 return new Promise((resolve, reject) {
 wx.request({
 url: _url,
 method: method,
 data: data,
 header: {
 Content-Type : application/x-www-form-urlencoded 
 success(request) {
 resolve(request.data)
 fail(error) {
 reject(error)
 complete(aaa) {
 // 加载开展
 * 手机微信微信小程序的promise没有finally方法 本身扩展下
Promise.prototype.finally function (callback) {
 var Promise this.constructor;
 return this.then(
 function (value) {
 Promise.resolve(callback()).then(
 function () {
 return value;
 function (reason) {
 Promise.resolve(callback()).then(
 function () {
 throw reason;
具体进行步骤

1.点一下封裝的登录模板中的“允许”功能键 推行processLogin方法

 button class jbn_login bindgetuserinfo processLogin open-type getUserInfo 允许 /button 
 !-- getUserInfo 得到顾客信息内容內容 可以从bindgetuserinfo回调函数涵数中得到到顾客信息内容內容 -- 

processLogin方法

const WXAPI require( apifm-wxapi );
const index require( ../../utils/index.js )
 processLogin(e) {
 console.log(e.detail.userInfo)
 if (!e.detail.userInfo) {
 wx.showToast({
 title: 已撤消 ,
 icon: none 
 return 
 // 倘若有userinfo ,就开启register申请办理申请注册方法
 index.register(this)

2.倘若有userInfo 就开启register申请办理申请注册方法 依据申请办理申请注册把腾讯信息内容內容加载公司数据信息信息内容库
申请办理申请注册务必三个关键主要参数

iv 数据信息数据加密值codeencryptedData 数据信息数据加密数据信息信息内容
async function register(page) {
 let _this this;
 wx.login({
 success: function (res) {
 let code res.code; // 手机上手机微信登录插孔返回的 code 关键主要参数 下面申请办理申请注册插孔务必选用
 wx.getUserInfo({
 success: function (res) {
 let iv res.iv;
 let encryptedData res.encryptedData;
 let referrer // 明显强烈推荐人
 let referrer_storge wx.getStorageSync( referrer );
 if (referrer_storge) {
 referrer referrer_storge;
 // 下面一开始开启申请办理申请注册插孔
 WXAPI.register_complex({
 code: code,
 encryptedData: encryptedData,
 iv: iv,
 referrer: referrer
 }).then(function (res) {
 console.log(res)
 _this.login(page);

3.推行登录的login方法 依据登录获得token

async function login(page) {
 const _this this
 wx.login({
 success: function (res) {
 WXAPI.login_wx(res.code).then(function (res) {
 if (res.code 10000) {
 // 去申请办理申请注册
 _this.register(page)
 return;
 if (res.code ! 0) {
 // 登录歪斜确
 wx.showModal({
 title: 无法登录 ,
 content: res.msg,
 showCancel: false
 return;
 wx.setStorageSync( token , res.data.token)
 wx.setStorageSync( uid , res.data.uid)
 if (page) {
 page.onShow()

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://myjzr.com/ganhuo/4143.html