gmnon.cn-疯狂蹂躏欧美一区二区精品,欧美精品久久久久a,高清在线视频日韩欧美,日韩免费av一区二区

站長資訊網
最全最豐富的資訊網站

淺析node怎么進行微博第三方登錄

怎么進行微博第三方登錄?下面本篇文章給大家介紹一下使用node實現微博第三方登錄的方法,希望對大家有所幫助!

淺析node怎么進行微博第三方登錄

node.js極速入門課程:進入學習

接入微博第三方登錄可以免注冊,對用戶的體驗更好,今天我們就用nodejs實現微博第三方登錄(用其它語言也可以)。【相關教程推薦:nodejs視頻教程】

實現效果

在線實例: http://www.lolmbbs.com/login

1、點擊微博登錄按鈕登錄

淺析node怎么進行微博第三方登錄

2、直接掃碼登錄

具體實現

一、申請weibo網站接入

登錄https://open.weibo.com/connect申請web網站接入
本地開發的時候應用地址寫:127.0.0.1

淺析node怎么進行微博第三方登錄
淺析node怎么進行微博第三方登錄
淺析node怎么進行微博第三方登錄

二、點擊按鈕微博登錄

采用OAuth2.0授權,詳細可參考文檔https://open.weibo.com/wiki/Connect/login

1. 生成微博登錄授權驗證碼

const weiboUrl = `https://api.weibo.com/oauth2/authorize?client_id=${weiboConfig.appKey}&response_type=code&redirect_uri=${weiboConfig.redirectUrl}`
登錄后復制

appKey: 創建應用成功后weibo給你的appKey
redirectUrl: 用戶授權成功后跳轉的你的前端頁面,我這里寫的是http://127.0.0.1:8080/login

2. 授權頁面跳轉,獲取用戶code

用戶授權登錄后,會跳轉到你上一步寫的redirectUrl,并帶上用戶code,url類似于http://127.0.0.1:8080/login?code=abcdef

vue監聽路由url,如果url上有code就去請求后端的登錄回調接口

created() {     const { code } = this.$route.query;     if (code) {       loginCallback({ code }).then((res) => {         this.$message({           message: `${res.nickname} 歡迎您`,           type: "success",         });         this.setUser(res);         this.$router.push("/tool/qr");       });     }   }
登錄后復制

3. 后端登錄回調接口,通過用戶code獲取accessToken,再通過accessToken獲取用戶信息,完成登錄

   async loginCallback(ctx) {       let { code } = ctx.request.body       if (!code) {          return ctx.error(errCode.PARAMS_ERROR, '參數錯誤')       }       // 獲取accessToken       const { access_token, uid } = await got.post('https://api.weibo.com/oauth2/access_token', {          form: {             client_id: weiboConfig.appKey,             client_secret: weiboConfig.appSecret,             grant_type: 'authorization_code',             redirect_uri: weiboConfig.redirectUrl,             code          }       }).json()       // 通過accessToken獲取UserInfo       const { id, name: nickname, avatar_hd: avatar } = await got.get(`https://api.weibo.com/2/users/show.json?access_token=${access_token}&uid=${uid}`).json()       // 在自己的系統內創建User       let [user, isCreate] = await WeiboUser.upsert({ id, nickname, avatar })       // 生成登錄Token,通過userType區分是微博登錄用戶還是系統賬號登錄用戶       const token = await jwt.createToken({ ...user.toJSON(), userType: 'weiboUser' })       return ctx.success({ nickname, avatar, token })    }
登錄后復制

三、微博掃碼登錄

1. 生成微博掃碼登錄二維碼

 async getWeiboLoginQr(ctx) {       const qrApi = `https://api.weibo.com/oauth2/qrcode_authorize/generate?client_id=${weiboConfig.appKey}&redirect_uri=${weiboConfig.redirectUrl}&scope=&response_type=code&state=&__rnd=${Date.now()}`       const { url, vcode } = await got.get(qrApi).json()       return ctx.success({ weiboQrUrl: url, vcode }) }
登錄后復制

返回的url就是微博登錄二維碼url,vcode相當于此二維碼唯一標識,用來查詢用戶是否掃碼

2. 前端不停輪詢,查詢此二維碼是否被掃碼授權

前端:

 const id = setInterval(() => {           getWeiboLoginQrStatus({ vcode }).then((res) => {             const { status, url } = res;             if (status === "3") {               window.location = url;               clearInterval(id);             }           }); }, 3000);
登錄后復制

后端:

   async getWeiboLoginQrStatus(ctx) {       const { vcode } = ctx.request.query       if (!vcode) {          return ctx.error(errCode.PARAMS_ERROR, '參數錯誤')       }       const queryQrApi = `https://api.weibo.com/oauth2/qrcode_authorize/query?vcode=${vcode}&__rnd=${Date.now()}`       const { status, url } = await got(queryQrApi).json()       return ctx.success({ status, url })    }
登錄后復制

如果status為3,代碼用戶已經掃碼授權了,同時返回的url即點擊按鈕登錄后的前端回調url。之后的步驟就跟2. 授權頁面跳轉,獲取用戶code一模一樣了.

贊(0)
分享到: 更多 (0)
?
網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
gmnon.cn-疯狂蹂躏欧美一区二区精品,欧美精品久久久久a,高清在线视频日韩欧美,日韩免费av一区二区
善良的小姨在线| 天天做天天干天天操| 久久久久久久久久毛片| 久久久久久久久久网| 五月婷婷之婷婷| 色综合av综合无码综合网站| 天天色天天干天天色| 免费观看成人在线视频| 日本一道在线观看| 亚洲自拍第三页| 国产一区二区视频免费在线观看| 波多野结衣与黑人| 亚洲天堂网2018| 五月婷婷六月合| 91在线视频观看免费| 波多野结衣综合网| 成人免费观看cn| 亚洲熟妇无码av在线播放| 国产精品自在自线| 一区二区三区 日韩| 日本成人黄色网| 992kp快乐看片永久免费网址| 人人妻人人澡人人爽欧美一区| 91网址在线观看精品| 岛国毛片在线播放| 成年人三级黄色片| 欧美美女一级片| 成人黄色一级大片| 在线免费观看av网| 日日夜夜精品视频免费观看| 亚洲妇熟xx妇色黄蜜桃| 亚洲精品综合在线观看| 亚洲av无日韩毛片久久| www.污网站| 四虎1515hh.com| 中文字幕在线中文| 鲁一鲁一鲁一鲁一色| 国产成人a亚洲精v品无码| 激情六月丁香婷婷| 香港日本韩国三级网站| 亚洲午夜激情影院| 男女爱爱视频网站| 免费看黄在线看| 成人免费无码av| 亚洲一区二区中文字幕在线观看| 欧美一级小视频| 青青草国产免费| 日韩中文字幕二区| 国产免费中文字幕| 国产尤物av一区二区三区| 精品国产av无码一区二区三区| 日本国产在线播放| www.久久久久久久久久久| 中文字幕乱码免费| 国产成人a亚洲精v品无码| 亚洲一区二区三区观看| 国产成人一二三区| 欧美亚洲日本在线观看| 好色先生视频污| 久热免费在线观看| 91制片厂免费观看| 久久综合久久色| 国产日韩欧美大片| 91蝌蚪视频在线观看| 波多野结衣在线免费观看| 婷婷无套内射影院| 激情成人在线观看| 黄色高清无遮挡| 国产aaa免费视频| 奇米影视四色在线| 成 年 人 黄 色 大 片大 全| www.色偷偷.com| 精品少妇在线视频| 中文字幕第一页在线视频| 少妇无码av无码专区在线观看 | 国产福利片一区二区| 国产午夜大地久久| 一级黄色片播放| 欧美特黄aaa| 黄在线观看网站| 亚洲色图都市激情| 亚洲欧美国产中文| 中文字幕国产传媒| 国产精品50p| www.日本三级| 国产1区2区3区中文字幕| 成人亚洲精品777777大片| 鲁一鲁一鲁一鲁一澡| 国产一级片91| 超碰在线免费观看97| 久久99爱视频| 亚洲三级视频网站| 欧美 日韩精品| 久草热视频在线观看| 久艹在线免费观看| 蜜臀在线免费观看| 一级黄色在线播放| 日本三级福利片| 日本成人xxx| 中文字幕第三区| 九九热视频免费| 日韩va在线观看| www.污网站| 超碰在线免费观看97| 中文国产在线观看| 国产精品夜夜夜爽张柏芝| 岛国av免费在线| 看全色黄大色大片| 国产传媒久久久| av日韩一区二区三区| 久久综合久久网| heyzo亚洲| 国产一级不卡毛片| 一区二区三区入口| 91视频这里只有精品| 两性午夜免费视频| 免费看av软件| 欧美 亚洲 视频| 成人免费性视频| 人妻内射一区二区在线视频| 久久精品国产精品亚洲色婷婷| 成人黄色av片| 青青在线视频免费| 日本黄色福利视频| 国产精品久久久久久久久电影网| 日韩a级黄色片| 日日碰狠狠躁久久躁婷婷| 国产精品乱码久久久久| 伊人免费视频二| 北条麻妃在线视频观看| aa免费在线观看| 一级做a爱视频| 国产精品国产亚洲精品看不卡| 男人亚洲天堂网| 黄色免费高清视频| 日本午夜激情视频| www.这里只有精品| 黄色一级片国产| 日韩一级理论片| 男人c女人视频| 凹凸日日摸日日碰夜夜爽1| 热久久久久久久久| 无码精品a∨在线观看中文| 日本人视频jizz页码69| 成人手机视频在线| 欧美日韩激情视频在线观看| 五月婷婷之婷婷| 日本在线观看a| 国产精品igao激情视频| 久久久精品三级| 日韩人妻无码精品久久久不卡| 久久99999| 18禁网站免费无遮挡无码中文| 亚洲欧美日本一区二区三区| 国产96在线 | 亚洲| 婷婷激情综合五月天| av动漫免费看| 免费高清一区二区三区| 国产三级国产精品国产专区50| 日本在线xxx| 九一免费在线观看| 少妇网站在线观看| 国产青青在线视频| 在线观看污视频| 色一情一区二区三区| 国产激情在线观看视频| 日韩成人手机在线| 欧美视频国产视频| 熟妇人妻无乱码中文字幕真矢织江| 欧美无砖专区免费| 欧美 国产 精品| 欧美激情第一区| 911福利视频| mm131国产精品| 少妇激情一区二区三区| 波多野结衣之无限发射| 97在线免费视频观看| 在线一区二区不卡| 亚洲一级免费观看| 深夜黄色小视频| 日本黄大片一区二区三区| 国产综合av在线| 777精品久无码人妻蜜桃| 999一区二区三区| 日韩精品一区在线视频| 蜜臀av性久久久久蜜臀av| 久久久久久久久久毛片| 波多野结衣在线免费观看| 久久成年人网站| 老司机av福利| 日本美女爱爱视频| 蜜臀av性久久久久蜜臀av| 国产制服91一区二区三区制服| 大地资源网在线观看免费官网| 自拍一级黄色片| 国产尤物av一区二区三区| 男女啪啪免费视频网站| 成人三级视频在线播放| 成人在线观看a| 天天操,天天操|