项目中新建common文件夹,新建文件login.js

function getUrlCode() {// 截取url中的code方法var url = location.search;var theRequest = new Object();if (url.indexOf('?') != -1) {var str = url.substr(1);var strs = str.split('&');for (var i = 0; i < strs.length; i++) {theRequest[strs[i].split('=')[0]] = strs[i].split('=')[1];}}console.log(theRequest);return theRequest;
}function getCode() {// 非静默授权,第一次有弹框this.code = '';var local = window.location.href; // 获取页面urlvar appid = '';let id = 1var url = encodeURIComponent(local);this.code = getUrlCode(); // 截取codeurlEncodeif (JSON.stringify(this.code) == '{}') {// 如果没有code,则去请求window.location.href ='https://open.weixin.qq.com/connect/oauth2/authorize?appid=' +appid +'&redirect_uri=' +url +'&response_type=code&scope=snsapi_userinfo&state=1#wechat_redirect';} else {let that = thisuni.request({url: '/wx/userInfo/getUserInfo',data: {code: that.code.code},success(res) {console.log(res)that.userInfo = res.data.object.wxUserlogin(res.data.object.wxUser)},fail(err) {console.log(err)}})}
}function login(userInfo) {let that = thisuni.request({url: '/login',method: 'POST',data: {username: userInfo.openid,password: userInfo.openid},header: {"content-type": "application/x-www-form-urlencoded"},success: res => {console.log(res)getApp().globalData.token = res.data.tokengetApp().globalData.userInfo = res.data.user},fail: (err) => {console.log(err)},});
}module.exports = {getCode
}

在需要的页面引入

var login = require('../../common/login.js')
onLoad(option) {console.log(option)let userInfo = getApp().globalData.userInfo;if (userInfo.id) {this.userInfo = userInfo;} else {// this.getCode();login.getCode()}},

uniapp微信公众号登录相关推荐

  1. uni-app微信公众号登录

    获取url参数的方法:这个方法url必须是带着#/的 let pages = getCurrentPages()let len = pages.lengthlet curParam = pages[l ...

  2. uniapp-H5微信公众号登录

    H5微信公众号登录 uniapp-H5使用微信公众号登录 1.挟持是否在微信h5打开 2.在App.vue中做一个全局监听code 3.具体看官方开发文档 uniapp-H5使用微信公众号登录 在使用 ...

  3. .NET C#使用微信公众号登录网站

    这篇文章主要介绍了.NET C#使用微信公众号登录网站,教大家利用微信公众号进行网站登录,感兴趣的小伙伴们可以参考一下 适用于:本文适用于有一定微信开发基础的用户 引言:花了300大洋申请了微信公众平 ...

  4. uni-app微信公众号(5)——新增、修改地址

    承接上面一篇文章,没有看到上篇文章的童鞋请点这里uni-app微信公众号(4)--地址管理页面_徐小硕-心之所向,素履以往-CSDN博客当然在一个类似商城的公众号中,自然也少不了用户地址的添加,下面我 ...

  5. 微信公众号登录密码参数加密详解

    微信公众号登录密码pwd参数加密详解 前言 此参数的加密没有任何难度,适合小白练手学习. 网址:https://mp.weixin.qq.com/ 一.打开浏览器开始抓包 输入错误的账号密码,登录.然 ...

  6. uniapp 微信公众号支付demo

    uniapp 微信公众号支付 demo 效果图如下 demo 下载链接:uniapp微信公众号支付demo-HTML5文档类资源-CSDN下载

  7. uniapp微信公众号授权登录,本地调试

    在项目如何集中微信公众号授权登录 后端跳转获取code码,最后拼接, //保留登录前的页面参数.为了不让参数传到后台,并且在微信授权链接带来带去,可以将参数和登录前的地址存到本地缓存let route ...

  8. uniapp - 微信公众号授权登录

    [缘由] 采用uniapp进行微信小程序和微信公众号双版本开发:考虑到用户唯一性,我们后端确定了以"unionid".作为唯一标识. 有的小伙伴估计也是刚入这坑,我就简单说一下步骤 ...

  9. uniapp微信公众号h5开发--(微信开发回调、背景音乐自动播放、微信朋友分享、微信扫一扫)一站式踩坑

    微信公众号开发,一站式踩坑 开发前提:例如你们域名是https://www.baidu.com 配置nginx反向代理,把你项目的端口重定向到你们测试环境或线上环境域名 # 访问https://bai ...

最新文章

  1. 1223: 输出汉诺塔问题的盘子移动步骤(Java)
  2. C 预处理器 —— __DATE__ # __TIME__ # __FILE__ # __LINE__ # __STDC__ (预处理宏的使用 —— 打印debug信息:)
  3. 限制Textarea文本域内容的长度
  4. php调用应用程序api,使用PHP调用openAPI
  5. 数学建模【建模竞赛与论文写作】
  6. 菜鸟学C语言(五)之求定积分
  7. java bigdecimal min_java
  8. explain 之key rows extra
  9. -----IT男生涯————初始篇
  10. emc存储java打开后报错_连接EMC存储系统 - osc_mk8rqvg4的个人空间 - OSCHINA - 中文开源技术交流社区...
  11. Java ThreadLocal study 2
  12. 直线回归和相关------(四)直线相关系数和决定系数(原理与公式推导)
  13. 通信upf是什么意思_upf50+是什么意思 upf50+的防护级别(防紫外线)
  14. [go基础] go基础之字符串中查找汉字数量
  15. 2015年十大最具有影响力的免费网站推广方式
  16. 常见颜色RGB值,有图。
  17. 45个高频词的一词多义和固定搭配
  18. MySQL语句获取今天的0点和23:59:59
  19. 在线问答“三重门”:知识、营销与服务直达
  20. VS中使用BugTrap定位程序崩溃点

热门文章

  1. Flex CookBook 读书笔记 第一部分
  2. cocos creator 实现双指缩放的两种方式
  3. 【netty学习】之零拷贝
  4. 用Python构建一个电子表格应用程序的,以使数据科学变得更容易
  5. 高级mysql数据库优化_MySQL数据库优化建议
  6. 完整的二维码扫描解决方案
  7. 银行贷款预测分析(Loan Prediction)
  8. 继Google AI黑人女性离职后又一女高管被解雇,A I伦理还有很长的路
  9. 在OpenCV里实现高斯平滑1
  10. jsdelivr使用