您當前位置>首頁 » 新聞資(zī)訊 » 公衆号相關(guān) >
Vue微信公衆号靜默授權
發表時間:2020-10-19
發布人:葵宇科技
浏覽次數:58
首先要注冊一個(gè)公衆号
再裡面配置自己的安全域名 有兩個(gè)地方要配置 開發-》設置
配置完之後 在微信開發工具打開,
因為微信那邊的限制 我目前隻能在把頁面放到服務器(qì)上進行訪問(wèn)
這個(gè)是靜默授權在邏輯是打開頁面時 有一個(gè)redirect_uri 這個(gè)參數 是獲取code後的重定向位置 一般就是當前頁面
code 的值 獲取成功後會放到url中(zhōng) 通(tōng)過 location去獲取就好了
created() {
this.getUrl()
},
getUrl() {
let userAgent = navigator.userAgent;
if (userAgent.includes("iPhone") || userAgent.includes("iPad")) {
sessionStorage.setItem("originUrl", location.href); // 用于ios分享
}
this.getBaseInfos();
},
// 編碼函數
getUrlParam(name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); //構造一個(gè)含有目标參數的正則表達式對象
var r = window.location.search.substr(1).match(reg); //匹配目标參數
if (r != null) return unescape(r[2]);
return null; //返回參數值
},
getBaseInfos() {
if (this.isWeiXin()) {
const code = this.getUrlParam("code"); // 截取路(lù)徑中(zhōng)的code
if (code == null || code === "") {
let url = "";
let userAgent = navigator.userAgent;
if (userAgent.includes("iPhone") || userAgent.includes("iPad")) {
url = sessionStorage.getItem("originUrl");
} else {
url = window.location.href;
}
window.location.href =
"https://open.weixin.qq.com/connect/oauth2/authorize?appid=你(nǐ)申請的appkey&redirect_uri=" +
encodeURIComponent(url) +
"&response_type=code&scope=snsapi_base&state=1&connect_redirect=1#wechat_redirect";
} else {
}
if (code != "" && code != null) {
this.wxCode = code;
console.log(code)
this.getOpenid(code)
}
} else {
}
},
isWeiXin() {
var ua = window.navigator.userAgent.toLowerCase();
if (ua.match(/MicroMessenger/i) == "micromessenger") {
return true;
} else {
return false;
}
},