vue2微信授权登录

微信授权登录

前言

分享一下自己所遇到的问题,适合新手小白,在这里只记录前端所用到的内容,
首先你得拿到微信开放平台内创建应用的APPID,怎么拿这里就不记录了,自行去搜索


一、选择自己的登录方式

1.第一种是直接拼接url跳转微信的授权页面
2.第二种就是引用微信提供的[添加链接描述](http://wwcdn.weixin.qq.com/node/wework/wwopen/js/wwLogin-1.2.4.js)将二维码引入自己的页面

说明:我用的是第二种方式授权,所以在这里记录一下第二种,也是推荐使用的一种

二、使用步骤

1.引入微信提供的wwLogin.js

代码如下(示例):将wwLogin.js下载至本地在所使用的页面引入

import '你的路径'

2.页面使用

代码如下(示例):在页面定义一个存放二维码的元素

<div id="wxcode"></div>//定义一个存放二维码的元素,当前id可自行设置,要和生成时id对应就可

3.生成二维码

methods:{
	 createWxQrcode() {
                // 生成微信登录二维码
                this.$nextTick(() => {
                    var obj = new WxLogin({
                          self_redirect: false,
                          id: "wxcode", // 页面显示二维码的容器id
                          appid: "你的APPID", // 微信开发者内创建应用的APPID
                          scope: "snsapi_login",
                         redirect_uri: encodeURIComponent('自己登录成功以后所进入的页面'),//当前回调的域名必须和微信开放平台授权回调域一致
                          state: "bind",
                          style: "black",
                          href:""//这个字段可设置二维码样式但是必须转base64格式 具体就不细说了,百度内容很多
                      });
                })
            }

}

4.调用方法

async mounted(){
   this.createWxQrcode(); //调用你所定义的生成方法就可以了
}

5.获取code

代码如下(示例):最后一步因为我的回调地址不是当前登录页面地址,获取code的方法就得分开写

  getUrlCode(){
      var url = location.search
      this.winUrl = url
      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
  }

在你所用的地方获取调用地方法获取code 例如:this.getUrlCode().code

如果你的回调页面和你微信登录页面相同获取code就是第一步,先获取code,判断有无当前code,有code那就执行你有的逻辑,传给后台去获取其他参数返给你状态,如果没有code,同理就去执行没有code逻辑,获取code

总结

以上就是今天要讲的内容,本文仅仅简单介绍了微信授权登录的使用

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Vue 微信一键登录授权通常需要以下步骤: 1. 注册微信开放平台账号并创建应用,获取 AppID 和 AppSecret。 2. 在 Vue 项目中安装 `vue-wechat-auth` 插件,可以通过 npm 或 yarn 安装: ``` npm install vue-wechat-auth ``` 3. 在 `main.js` 中引入插件并配置: ```javascript import Vue from 'vue' import VueWechatAuth from 'vue-wechat-auth' Vue.use(VueWechatAuth, { appId: 'YOUR_APPID', responseType: 'code', scope: 'snsapi_userinfo', state: 'STATE', redirectUri: 'YOUR_REDIRECT_URI' }) ``` - `appId`:微信开放平台的 AppID。 - `responseType`:授权类型,一般为 `code`。 - `scope`:授权作用域,一般为 `snsapi_userinfo`。 - `state`:自定义参数,可为空。 - `redirectUri`:回调 URL,用于接收授权码。 4. 在需要使用微信登录的页面组件中添加登录按钮,并调用插件提供的 `wechatAuth()` 方法: ```html <template> <button @click="wechatLogin">微信一键登录</button> </template> <script> export default { methods: { wechatLogin() { this.$wechatAuth.redirect() } } } </script> ``` 5. 在回调 URL 页面组件中获取授权码,并调用接口进行登录或获取用户信息: ```html <template> <div> <!-- 获取授权码 --> <input v-model="code" placeholder="请输入授权码" /> <button @click="login">登录</button> </div> </template> <script> export default { data() { return { code: '' } }, methods: { login() { // 使用授权码调用后端接口进行登录或获取用户信息 // ... } } } </script> ``` 以上是一个简单的 Vue 微信一键登录授权的流程,其中的具体实现方式可能根据实际需求和后端接口的不同而有所差异。你可以根据具体情况进行调整和扩展。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值