国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當(dāng)前位置: 首頁 - 科技 - 知識百科 - 正文

vue實(shí)現(xiàn)微信獲取用戶信息的方法

來源:懂視網(wǎng) 責(zé)編:小采 時(shí)間:2020-11-27 21:59:49
文檔

vue實(shí)現(xiàn)微信獲取用戶信息的方法

vue實(shí)現(xiàn)微信獲取用戶信息的方法:本次項(xiàng)目做到一個(gè)點(diǎn)贊功能,即分享出去一個(gè)頁面給微信好友,微信好友點(diǎn)開并點(diǎn)贊,需要將點(diǎn)贊用戶的微信昵稱,微信頭像以及微信openid,微信unionid(這個(gè)需要關(guān)注公眾號才會有該字段)傳給后端,記錄點(diǎn)贊人的相關(guān)信息 微信網(wǎng)頁授權(quán) 1、微信公眾號網(wǎng)頁授權(quán)配置
推薦度:
導(dǎo)讀vue實(shí)現(xiàn)微信獲取用戶信息的方法:本次項(xiàng)目做到一個(gè)點(diǎn)贊功能,即分享出去一個(gè)頁面給微信好友,微信好友點(diǎn)開并點(diǎn)贊,需要將點(diǎn)贊用戶的微信昵稱,微信頭像以及微信openid,微信unionid(這個(gè)需要關(guān)注公眾號才會有該字段)傳給后端,記錄點(diǎn)贊人的相關(guān)信息 微信網(wǎng)頁授權(quán) 1、微信公眾號網(wǎng)頁授權(quán)配置

本次項(xiàng)目做到一個(gè)點(diǎn)贊功能,即分享出去一個(gè)頁面給微信好友,微信好友點(diǎn)開并點(diǎn)贊,需要將點(diǎn)贊用戶的微信昵稱,微信頭像以及微信openid,微信unionid(這個(gè)需要關(guān)注公眾號才會有該字段)傳給后端,記錄點(diǎn)贊人的相關(guān)信息

微信網(wǎng)頁授權(quán)

1、微信公眾號網(wǎng)頁授權(quán)配置,詳見官網(wǎng)

2、關(guān)于網(wǎng)頁授權(quán)的兩種scope的區(qū)別說明 (詳細(xì)見官網(wǎng))

-scope=snsapi_base 獲取微信用戶openid,獲取后直接跳轉(zhuǎn)業(yè)務(wù)頁面,不需要用戶操作

-scope=snsapi_userinfo 獲取微信用戶詳細(xì)信息(昵稱,頭像等),需要用戶手動(dòng)點(diǎn)擊授權(quán),當(dāng)點(diǎn)擊允許時(shí),會跳轉(zhuǎn)業(yè)務(wù)頁面(類似于關(guān)閉彈窗),點(diǎn)擊拒絕時(shí)會推出頁面,授權(quán)如圖:

⚠️

3、用戶管理類接口中的“獲取用戶基本信息接口”,是在用戶和公眾號產(chǎn)生消息交互或關(guān)注后事件推送后,才能根據(jù)用戶OpenID來獲取用戶基本信息。這個(gè)接口,包括其他微信接口,都是需要該用戶(即openid)關(guān)注了公眾號后,才能調(diào)用成功的。

4、分享頁面的實(shí)際鏈接:

⚠️ 當(dāng)前頁面的鏈接需要 encodeURIComponent( url ) 編碼

https://open.weixin.qq.com/connect/oauth2/authorize?appid=APPID&redirect_uri=REDIRECT_URI&response_type=code&scope=SCOPE&state=STATE#wechat_redirect
// APPID: 公眾號的appid
// REDIRECT_URI:當(dāng)前頁面的鏈接,需要編碼
// scope: snsapi_base / snsapi_userinfo
// 其他值均不用改動(dòng)

5、點(diǎn)擊允許后跳轉(zhuǎn)的鏈接是 REDIRECT_URI + code=CODE&state=STATE。

⚠️ 此處的code可以用來調(diào)取接口獲取微信用戶的相關(guān)信息

⚠️ 每次用戶授權(quán)帶上的code將不一樣,code只能使用一次,5分鐘未被使用自動(dòng)過期。

-官方說法code只能被使用一次,在H5頁面中,如果有跳轉(zhuǎn)的情況,再返回當(dāng)前頁面,微信會判斷是否已經(jīng)授權(quán),如果授權(quán)過,則code返回的還是上一次的code,而你如果用code調(diào)取用戶信息(code已失效)會報(bào) invalid code, hints: [ req_id: GGJbIz4ce-oGYwya ],所以在第一次獲取用戶信息的時(shí)候就可以將該用戶信息存儲在本地

6、需要獲取用戶信息,且二次分享的問題

雖然當(dāng)前頁面沒有問題,但是當(dāng)前微信用戶使用微信進(jìn)行二次分享,則微信會分享當(dāng)前頁面的鏈接(不包含https://open.weixin.qq.com),新用戶點(diǎn)擊則不會進(jìn)行授權(quán),但是微信的二次分享會在當(dāng)前鏈接加上 &from= ,可以在vue created的生命周期里進(jìn)行參數(shù)獲取并判斷,如果有from參數(shù),則跳轉(zhuǎn)https://open.weixin.qq.com/co... 鏈接,讓用戶授權(quán)
⚠️ 二次分享樣式顯示問題可以查看我的另一篇文章vue + 微信二次分享/自定義分享

代碼如下

// created 周期
if(this.$route.query.from) { // 判斷鏈接中是否有from參數(shù),下面的studentId,activityId項(xiàng)目需要
 let _nowUrl = window.location.href.split('?')[0] + `?resource=1&studentId=${this.$route.query.studentId}&activityId=${this.$route.query.activityId}`
 let _shareUrl = `https://open.weixin.qq.com/connect/oauth2/authorize?appid=${appId}&redirect_uri=${encodeURIComponent(_nowUrl)}&response_type=code&scope=snsapi_userinfo&state=STATE#wechat_redirect`
 window.location.href = _shareUrl
 return
}
 // 處理微信用戶信息
 handleWechatMsg(code) {
 // 調(diào)取 獲取微信用戶信息的接口(后端參考微信官方文檔進(jìn)行封裝) code--參數(shù)
 api.getWechatInfo(code).then((res)=>{
 if(res.data.code == 200) {
 // 返回的是json字符串
 let _data = res.data.content
 let _personMsg = JSON.parse(_data)
 this.wechatMsg = _personMsg
 // 本地存儲微信用戶信息,防止頁面被刷新,code失效
 window.localStorage.setItem('wechatMesssage', _data)
 } else if (res.data.code == 400) { // 400-code失效,400是后端返回,具體看后端返回哪個(gè)碼
 let msgs = window.localStorage.getItem('wechatMesssage')
 this.wechatMsg = JSON.parse(msgs) 
 } else {
 this.$Message.message(res.data.message);
 }

 })
 },

如果需要獲取微信unionid,則需要引導(dǎo)用戶關(guān)注公眾號,可以在返回的用戶信息中判斷是否含有unionid,如果沒有,可以展示微信公眾號的二維碼,供用戶識別關(guān)注

⚠️--------------------

  1. 當(dāng)前頁面的域名,需要在公眾號后臺配置添加(詳見官網(wǎng))
  2. 如果頁面存在#,可能會出問題,可以使用nginx進(jìn)行配置

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

vue實(shí)現(xiàn)微信獲取用戶信息的方法

vue實(shí)現(xiàn)微信獲取用戶信息的方法:本次項(xiàng)目做到一個(gè)點(diǎn)贊功能,即分享出去一個(gè)頁面給微信好友,微信好友點(diǎn)開并點(diǎn)贊,需要將點(diǎn)贊用戶的微信昵稱,微信頭像以及微信openid,微信unionid(這個(gè)需要關(guān)注公眾號才會有該字段)傳給后端,記錄點(diǎn)贊人的相關(guān)信息 微信網(wǎng)頁授權(quán) 1、微信公眾號網(wǎng)頁授權(quán)配置
推薦度:
標(biāo)簽: 微信 信息 微信的
  • 熱門焦點(diǎn)

最新推薦

猜你喜歡

熱門推薦

專題
Top
主站蜘蛛池模板: 久久久久久久99久久久毒国产 | 在线观看免费精品国产 | 欧美国产综合在线 | 国产视频高清 | 97精品高清一区二区三区 | 最近中文字幕高清电影在线 | 在线欧美日韩制服国产 | 国产精品亚洲αv天堂2021 | 精品国产一区二区三区2021 | 欧美日韩国产一区二区三区播放 | 在线精品亚洲欧洲第一页 | 国产一区二区三区在线视频 | 国产成人久久精品激情91 | 久久亚洲精选 | 五月天中文字幕 | 欧美影欧美影院免费观看视频 | 国产成人在线看 | 日韩另类| 欧美一区二区三区大片 | 欧美精品高清 | 欧美日韩国产在线人 | 国产传媒一区二区三区四区五区 | 国产精品专区第二 | 高h肉肉视频在线播放观看 福利视频一区二区三区 | 亚洲欧美激情精品一区二区 | 国产福利二区 | 91视频久久 | 初撮五十路交尾视频 | 欧美人与禽zoz0性伦交 | 欧美亚洲综合图区在线 | 韩日欧美 | 精品视频第一页 | 一区免费在线观看 | 91第一页| 欧美日韩另类综合 | 欧美亚洲综合图区在线 | 国产欧美在线观看不卡 | 不卡中文字幕在线观看 | 日本免费黄色网址 | 久久噜噜 | 午夜国产 |