摘要:前端配置微信微信是微信公眾平臺面向網(wǎng)頁開發(fā)者提供的基于微信的網(wǎng)頁開發(fā)工具包,通過使用微信,網(wǎng)頁開發(fā)者,可借助微信高效的使用拍照掃碼錄音定位等原生應(yīng)用愛具有的能力。
前端配置微信 js-sdk
前端開發(fā)者使用 js-sdk 的 步驟:微信js-sdk 是微信公眾平臺面向網(wǎng)頁開發(fā)者提供的基于微信的網(wǎng)頁開發(fā)工具包,通過使用微信 js-sdk,網(wǎng)頁開發(fā)者,可借助微信高效的使用 拍照、掃碼、錄音、定位等原生應(yīng)用愛具有的能力。
在微信公眾平臺綁定安全域名
后端接口實現(xiàn)js-sdk配置所需要的參數(shù)
頁面實現(xiàn) js-sdk 中 config 的注入配置,并實現(xiàn)成功失敗的處理
步驟一 在微信公平臺綁定安全域名
在微信公眾平臺綁定安全域名(注意:域名的書寫要求,以及那個 txt 文件下載);
-
步驟二 引入 js 文件
文件在需要調(diào)用JS接口的頁面引入如下JS文件,(支持https):
http://res.wx.qq.com/open/js/...
備注:支持使用 AMD/CMD 標(biāo)準(zhǔn)模塊加載方法加載
步驟三:通過config接口注入權(quán)限驗證配置
//分享文案 var title = "碼客街"; // 分享標(biāo)題 var desc = "歡迎您,進(jìn)駐碼客街"; // 分享描述 var link = "http://*******.com/html/share.html"; // 分享鏈接,該鏈接域名或路徑必須與當(dāng)前頁面對應(yīng)的公眾號JS安全域名一致 var imgUrl = "http://******.com/web3/rs/img/about/about-logo.png"; // 分享圖標(biāo) var type = ""; // 分享類型,music、video或link,不填默認(rèn)為link var dataUrl = ""; // 如果type是music或video,則要提供數(shù)據(jù)鏈接,默認(rèn)為空 $.ajax({ type: "GET", url:"http://*********.com/WeixinJDK/GetSignPackageJSONP", data: { url: window.location.href.split("#")[0] }, dataType: "jsonp", success: function(result) { //獲取appid,timestamp,noncestr,signature等信息,需要后端小伙伴配合 myconfig(rusult.data); }, error: function() { alert("ajax error"); } }); function myconfig(data){ //將data值寫入 wx.config wx.config({ debug: true, // 開啟調(diào)試模式,調(diào)用的所有api的返回值會在客戶端alert出來,若要查看傳入的參數(shù),可以在pc端打開,參數(shù)信息會通過log打出,僅在pc端時才會打印。 appId: "", // 必填,公眾號的唯一標(biāo)識 timestamp: , // 必填,生成簽名的時間戳 nonceStr: "", // 必填,生成簽名的隨機(jī)串 signature: "",// 必填,簽名,見附錄1 jsApiList: [] // 必填,需要使用的JS接口列表,所有JS接口列表見附錄2 }); //通過ready wx.ready(function(){ // config信息驗證后會執(zhí)行ready方法,所有接口調(diào)用都必須在config接口獲得結(jié)果之后,config是一個客戶端的異步操作,所以如果需要在頁面加載時就調(diào)用相關(guān)接口,則須把相關(guān)接口放在ready函數(shù)中調(diào)用來確保正確執(zhí)行。對于用戶觸發(fā)時才調(diào)用的接口,則可以直接調(diào)用,不需要放在ready函數(shù)中。 // 在wx.ready 里面 判斷當(dāng)前客戶端版本是否支持指定JS接口 wx.checkJsApi({ jsApiList: ["chooseImage"], // 需要檢測的JS接口列表,所有JS接口列表見附錄2, success: function(res) { // 以鍵值對的形式返回,可用的api值true,不可用為false // 如:{"checkResult":{"chooseImage":true},"errMsg":"checkJsApi:ok"} //調(diào)用具體 api 接口 function api(); } }); }); wx.error(function(res){ // config信息驗證失敗會執(zhí)行error函數(shù),如簽名過期導(dǎo)致驗證失敗,具體錯誤信息可以打開config的debug模式查看,也可以在返回的res參數(shù)中查看,對于SPA可以在這里更新簽名。 alert(JSON.stringify(res)); }); } function api(){ //分享給朋友 wx.onMenuShareAppMessage({ title: title, // 分享標(biāo)題 desc: desc, // 分享描述 link: linkUrl, // 分享鏈接,該鏈接域名或路徑必須與當(dāng)前頁面對應(yīng)的公眾號JS安全域名一致 imgUrl: imgUrl, // 分享圖標(biāo) type: "", // 分享類型,music、video或link,不填默認(rèn)為link dataUrl: "", // 如果type是music或video,則要提供數(shù)據(jù)鏈接,默認(rèn)為空 success: function () { // 用戶確認(rèn)分享后執(zhí)行的回調(diào)函數(shù) }, cancel: function () { // 用戶取消分享后執(zhí)行的回調(diào)函數(shù) } }); //分享到朋友圈 wx.onMenuShareTimeline({ title: title, // 分享標(biāo)題 link: linkUrl, // 分享鏈接,該鏈接域名或路徑必須與當(dāng)前頁面對應(yīng)的公眾號JS安全域名一致 imgUrl: imgUrl, // 分享圖標(biāo) success: function () { // 用戶確認(rèn)分享后執(zhí)行的回調(diào)函數(shù) }, cancel: function () { // 用戶取消分享后執(zhí)行的回調(diào)函數(shù) } }); //分享到qq wx.onMenuShareQQ({ title: title, // 分享標(biāo)題 desc: desc, // 分享描述 link: linkUrl, // 分享鏈接 imgUrl: imgUrl, // 分享圖標(biāo) success: function () { // 用戶確認(rèn)分享后執(zhí)行的回調(diào)函數(shù) }, cancel: function () { // 用戶取消分享后執(zhí)行的回調(diào)函數(shù) } }); //分享到qq空間 wx.onMenuShareQZone({ title: title, // 分享標(biāo)題 desc: desc, // 分享描述 link: linkUrl, // 分享鏈接 imgUrl: imgUrl, // 分享圖標(biāo) success: function () { // 用戶確認(rèn)分享后執(zhí)行的回調(diào)函數(shù) }, cancel: function () { // 用戶取消分享后執(zhí)行的回調(diào)函數(shù) } }); // ············更多的api 請參見微信 js-sdk 開發(fā)文檔 }遇到問題:
配置過程中,一定要確保 注入 config 中的參數(shù)正確
. 如果配置過程中,wx.error 彈出 {"errMsg":"config:invalid url domain"}
原因:
js安全域名配置錯誤(去掉 http://)
ajax 請求的接口填寫錯誤(我就是大意,寫錯了)
配置中出現(xiàn) {"errMsg":"config fail"}
原因:多半是輸入 config 的參數(shù)錯誤,請檢查 config 參數(shù)
在使用 錄音 接口的時候,碰到了很多坑,等我解決完再來分享
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/83603.html
摘要:未使用微信如果網(wǎng)頁中未使用微信用戶在微信中打開網(wǎng)站可能會觸發(fā)這個錯誤,目前看來只有忽略。關(guān)于微信支付方法監(jiān)聽事件之后再進(jìn)行下一步操作方法直接使用文檔中的支付代碼,不要使用公眾號支付文檔里面的代碼。 Fundebug并沒有使用微信JS-SDK,然而卻收到了WeixinJSBridge is not defined的報錯: showImg(https://segmentfault.com...
摘要:進(jìn)過下面的步驟,一步一步的配置,就可以讓你正確的在項目中引入微信的。在進(jìn)行了正確的微信文件引入后看上面在頁面中調(diào)用如下代碼就可以注入權(quán)限驗證配置。可以通過微信提供的兩個接口來進(jìn)行事件回調(diào)。到這為止,微信的接入就完成了。 微信JS-SDK的功能 如果你點進(jìn)來,那么我相信你應(yīng)該知道微信的JS-SDK可以用來做什么了。微信的官方文檔描述如下。 微信JS-SDK是微信公眾平臺面向網(wǎng)頁開發(fā)者提供...
摘要:微信選擇圖片遇到的坑有個需求要在微信企業(yè)號里面做開發(fā),有個功能是選擇圖片,使用標(biāo)簽肯定是不管用了,手機(jī)上不能多選,所以使用了微信的提供的相關(guān),這個地方真的是有坑,記錄一下。 微信JS-SDK選擇圖片遇到的坑 有個需求要在微信企業(yè)號里面做開發(fā),有個功能是選擇圖片,使用input標(biāo)簽肯定是不管用了,Android手機(jī)上不能多選,所以使用了微信的JS-SDK提供的相關(guān)API,這個地方真的是有...
摘要:最近開發(fā)微信公眾號內(nèi)嵌頁面,使用搭建的項目,由于業(yè)務(wù)需求,需要實現(xiàn)微信自定義分享功能,所以項目中集成微信。 最近開發(fā)微信公眾號內(nèi)嵌H5頁面,使用vue搭建的項目,由于業(yè)務(wù)需求,需要實現(xiàn)微信自定義分享功能,所以項目中集成微信JS-SDK。微信JS-SDK是微信公眾平臺面向網(wǎng)頁開發(fā)者提供的基于微信內(nèi)的網(wǎng)頁開發(fā)工具包。通過使用微信JS-SDK,網(wǎng)頁開發(fā)者可借助微信高效地使用拍照、選圖、語音、...
摘要:安裝并引入依賴包這里是說明文檔下載依賴包在需要用到的模塊引入檢查是否引入成功可以在引入的模塊中執(zhí)行控制臺顯示以上代碼表示引入成功配置微信所有需要使用的頁面必須先注入配置信息,否則將無法調(diào)用開啟調(diào)試模式調(diào)用的所有的返回值會 1.安裝并引入JS-SDK依賴包 這里是JS-SDK說明文檔 1.1 npm 下載依賴包 npm install weixin-js-sdk --save 1.2.在...
閱讀 2919·2023-04-26 02:14
閱讀 3771·2019-08-30 15:55
閱讀 1855·2019-08-29 16:42
閱讀 2770·2019-08-26 11:55
閱讀 2855·2019-08-23 13:38
閱讀 496·2019-08-23 12:10
閱讀 1321·2019-08-23 11:44
閱讀 2826·2019-08-23 11:43