小梅梅的二狗子 小梅梅的二狗子
首页
  • fileReader
  • canvas
  • 【css世界】学习笔记
  • Vue

    • vue cli2 升级vue cli3 采坑记录
    • vue-cli3 项目 token.type.endsWith is not a function 生产事故分析
    • 使用vuepress 搭建团队文档
  • node

    • nodjs 爬取喜欢的的背景图片
    • 使用 puppeteer + nodejs 爬取喜欢的动漫资源
    • puppeteer爬取aspx网站
  • jenkins

    • Jenkins 从安装到自动部署h5
    • vue自动部署项目到服务器
    • jenkins自动打包前端代码并发布到测试或者生产
  • Vscode

    • Visual Studio Code 入门简介 常用插件介绍
    • vscode prettier eslint 插件格式化不生效的问题
  • 其他的

    • 声卡问题
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

qinyuanqi

搬砖使我变强!冲!!!
首页
  • fileReader
  • canvas
  • 【css世界】学习笔记
  • Vue

    • vue cli2 升级vue cli3 采坑记录
    • vue-cli3 项目 token.type.endsWith is not a function 生产事故分析
    • 使用vuepress 搭建团队文档
  • node

    • nodjs 爬取喜欢的的背景图片
    • 使用 puppeteer + nodejs 爬取喜欢的动漫资源
    • puppeteer爬取aspx网站
  • jenkins

    • Jenkins 从安装到自动部署h5
    • vue自动部署项目到服务器
    • jenkins自动打包前端代码并发布到测试或者生产
  • Vscode

    • Visual Studio Code 入门简介 常用插件介绍
    • vscode prettier eslint 插件格式化不生效的问题
  • 其他的

    • 声卡问题
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • 前端基础

  • 日常采坑

  • 前端框架

  • 部署相关

  • 微信

    • 微信扫码登录流程
      • 具体步骤
        • 2.创建应用,得到appid和AppSecret,并配置回调域名
        • 4. 开发者资质认证
        • 5. 配置一个内网穿透,方便调试(如果你们公司的是内网域名,那也可以,微信只校验了域名的合法性)
        • 如果是使用vue-cli 构建的项目,开启穿透会报错 invalid host header
        • invalid host header 解决办法
        • 6.授权流程说明
        • 7. 核心代码
        • 重点说明
        • 常规套路,会新开一个页面,然后扫码授权的方式
        • 8. 总结
      • 参考文档
  • 网易

  • 浏览器

  • 七牛云

  • 前端
  • 微信
qinyuanqi
2023-05-16
目录

微信扫码登录流程

# 前言

接入微信扫码登录整个流程的记录

# 具体步骤

1. 注册开发者账号 (opens new window)​

# 2.创建应用,得到appid和AppSecret,并配置回调域名

2.1 创建应用

2.2 填写应用资料,提交审核,审核通过会得到开发需要用的appid和AppSecret,这两个值, 这个值会给到后台,然后然后再通过接口给到我们

2.3 应用创建成功,配置回调域名

# 4. 开发者资质认证

# 5. 配置一个内网穿透,方便调试(如果你们公司的是内网域名,那也可以,微信只校验了域名的合法性)

我使用的natapp来做内网穿透,

https://natapp.cn/login (opens new window)

# 如果是使用vue-cli 构建的项目,开启穿透会报错 invalid host header

# invalid host header 解决办法
  • 报错信息

  • 解决办法

webpack 4:可以在build目录下的webpack.dev.conf.js文件,devServer下添加disableHostCheck: true,跳过检查

webpack5:一样是在修改vue 的devService 配置中添加 allowedHosts: 'all' 即可

# 6.授权流程说明

官网的说明

我个人的理解

流程图 (opens new window)​

# 7. 核心代码

  • 参数说明

# 重点说明

  • href的连接必须是一个外网的可访问的地址
  • 自定义二维码样式相关代码
.impowerBox .qrcode {width: 200px;}

.impowerBox .title {display: none;}

.impowerBox .info {width: 200px;}.

status_icon {display: none}

.impowerBox .status {text-align: center;}
1
2
3
4
5
6
7
8
9
# 常规套路,会新开一个页面,然后扫码授权的方式

https://open.weixin.qq.com/connect/qrconnect?appid=wxce0a56c2bb620e25&redirect_uri=https%3A%2F%2Fpassport.vip.com%2Fcallback%2Fweixin&response_type=code&scope=snsapi_login&state=e77986eb500341029f1e1aff094ee6c2#wechat_redirect (opens new window)

1.将上面的连接放到一个a标签中即可

2.当前页面显示二维码

3.引入js: http://res.wx.qq.com/connect/zh_CN/htmledition/js/wxLogin.js (opens new window)

4.在需要使用微信登录的地方实例以下JS对象,参数见上文介绍

var obj = new WxLogin({

self_redirect:true,

 id:"login_container",

 appid: "",  scope: "",

 redirect_uri: "",  

state: "",

style: "",

href: ""

 });
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

# 8. 总结

好好看文档,许多坑都是不好好看文档的下场 😄,与君共勉之

# 参考文档

微云-微信扫码流程 (opens new window)​

官方文档 (opens new window)​

上次更新: 2023/12/18, 15:00:26
jenkins自动打包前端代码并发布到测试或者生产
网易u盾 回车登录导致页面刷新的问题分析

← jenkins自动打包前端代码并发布到测试或者生产 网易u盾 回车登录导致页面刷新的问题分析→

最近更新
01
若依3.8.5版本vue-cli升级到 5.0.8碰到的一些问题
10-08
02
vuepress添加sitemap
05-17
03
vscode Live Server 插件使用教程
05-16
更多文章>
Theme by Vdoing | Copyright © 2019-2023 Evan Xu | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式