国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

一些H5對(duì)接微信JSSDK的問(wèn)題記錄

這篇具有很好參考價(jià)值的文章主要介紹了一些H5對(duì)接微信JSSDK的問(wèn)題記錄。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

這里給大家分享我在實(shí)際生活中總結(jié)出來(lái)的一些知識(shí),希望對(duì)大家有所幫助

一.SDK引入

這里提供兩套引入流程,一套是vue2.0及其他h5項(xiàng)目,一套是vue3.0的引入流程

不懂的也可以看我之前的一篇詳細(xì)流程

記錄--微信調(diào)用jssdk全流程詳解

1.js引入

直接在你的頁(yè)面里引入js文件就行

<script src="http://res.wx.qq.com/open/js/jweixin-1.4.0.js"></script>

2.weixin-js-sdk引入

先調(diào)用全局命令

npm install weixin-js-sdk

然后修改main.js,加上以上代碼

import wx from "weixin-js-sdk"
import {
	createSSRApp
} from 'vue'
export function createApp() {
	const app = createSSRApp(App)
	app.config.globalProperties.$wx=wx;
	return {
		app
	}
}

之后在調(diào)用的頁(yè)面直接$wx引入就行了

二.代碼引用流程

基礎(chǔ)代碼引用邏輯如下,需要我們?cè)趈sApiList中添加我們要的權(quán)限,然后調(diào)用對(duì)應(yīng)的wx接口,這里以定位權(quán)限為例

var wxNavigation = (data) => {
	return new Promise((resolve, reject) => {
		wx.config({
			debug: false, // 開(kāi)啟調(diào)試模式,調(diào)用的所有api的返回值會(huì)在客戶端alert出來(lái),若要查看傳入的參數(shù),可以在pc端打開(kāi),參數(shù)信息會(huì)通過(guò)log打出,僅在pc端時(shí)才會(huì)打印。
			appId: data.appId, // 必填,公眾號(hào)的唯一標(biāo)識(shí)
			timestamp: data.timestamp, // 必填,生成簽名的時(shí)間戳
			nonceStr: data.nonceStr, // 必填,生成簽名的隨機(jī)串
			signature: data.signature, // 必填,簽名
			jsApiList: ["getLocation"],// 必填,需要使用的JS接口列表
		});
		wx.ready(() => {
			wx.getLocation({
				type: "gcj02", // 默認(rèn)為wgs84的gps坐標(biāo),如果要返回直接給openLocation用的火星坐標(biāo),可傳入'gcj02'
				success: function(res) {
					resolve({
						bor: true,
						data: res,
					});
				},
			});
		});
	});
};

?三,報(bào)錯(cuò)處理

這里分享三個(gè)我經(jīng)常遇到的報(bào)錯(cuò)

1.xxxx: the permission value is offline verifying

這個(gè)報(bào)錯(cuò)是最常見(jiàn)的,是因?yàn)?config 沒(méi)有正確執(zhí)行,或者是調(diào)用的?JSAPI?沒(méi)有傳入 config 的jsApiList參數(shù)中。建議按如下順序檢查:

確認(rèn) config 正確通過(guò)。
如果是在頁(yè)面加載好時(shí)就調(diào)用了JSAPI,則必須寫(xiě)在wx.ready的回調(diào)中。
確認(rèn) config 的jsApiList參數(shù)包含了這個(gè)JSAPI。

2.開(kāi)發(fā)者工具config:ok 手機(jī)getLocation:invalid signature?

這個(gè)是在調(diào)用getLocation,wxOpenLocation等定位,打開(kāi)導(dǎo)航類(lèi)型的接口時(shí)會(huì)出現(xiàn)的問(wèn)題,原因就是接口權(quán)限比較高,如果換頁(yè)面調(diào)用了,沒(méi)有請(qǐng)求當(dāng)前頁(yè)面的url,就會(huì)導(dǎo)致invalid signature,一般是要重新請(qǐng)求一次jsSDK就沒(méi)問(wèn)題了,這里提供我的兩套思路

getLocation

問(wèn)題描述和解析

ios使用微信自帶方法wx.getLocation調(diào)取用戶地理位置,會(huì)直接走err,輸出報(bào)錯(cuò)是“‘getLocation:invalid signature’”

但是安卓機(jī)就沒(méi)這個(gè)問(wèn)題。

我看有人說(shuō)
調(diào)接口獲取wx.config配置所需參數(shù)的入?yún)ⅲ?yè)面路徑),ios沒(méi)有獲取到最新的
于是我在app.vue里進(jìn)入頁(yè)面時(shí),將當(dāng)前的路徑緩存起來(lái),在自己掉位置的頁(yè)面里使用。
但是解決不了我的問(wèn)題

后來(lái)我看到了網(wǎng)上說(shuō)ios刷新就能成功,我就測(cè)試了一下 ,果然是可以調(diào)用成功了!??!
然后也百度了好多,說(shuō)是這個(gè)是ios本身就有這個(gè)問(wèn)題。

最后在wx.ready里加了一個(gè)刷新一次頁(yè)面的方法,就沒(méi)問(wèn)題了

代碼思路:

  wx.config({
				debug: false,
				appId: data.appId,
				timestamp: data.timestamp,
				nonceStr: data.nonceStr,
				signature: data.signature,
				jsApiList: ["getLocation", "openLocation"],
			});
			wx.ready(() => {
				wx.getLocation({
					type: type, // 默認(rèn)為wgs84的gps坐標(biāo),如果要返回直接給openLocation用的火星坐標(biāo),可傳入'gcj02'
					success: function(res) {
						
					},
					fail: function(err) {
						const u = navigator.userAgent;
						const iOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/);
						if (iOS) {
							window.location.reload();
						}
						console.log('返回默認(rèn)地址')
						
					},
				});
			});

?wxOpenLocation

問(wèn)題描述

在調(diào)用了wxopenlocation時(shí),調(diào)試返回結(jié)果正常,但是就是打不開(kāi)地圖,一般是經(jīng)緯度沒(méi)有使用浮點(diǎn)類(lèi)型,如果使用了后還出現(xiàn)這個(gè)問(wèn)題,就需要我們?cè)谡{(diào)用時(shí)用延時(shí)調(diào)用,來(lái)防止我們的代碼在內(nèi)存運(yùn)行的時(shí)候反應(yīng)不過(guò)來(lái)

?代碼思路

var wxOpenLocation = (data, locationObj) => {
	wx.config({
		debug: false, // 開(kāi)啟調(diào)試模式,調(diào)用的所有api的返回值會(huì)在客戶端alert出來(lái),若要查看傳入的參數(shù),可以在pc端打開(kāi),參數(shù)信息會(huì)通過(guò)log打出,僅在pc端時(shí)才會(huì)打印。
		appId: data.appId, // 必填,公眾號(hào)的唯一標(biāo)識(shí)
		timestamp: data.timestamp, // 必填,生成簽名的時(shí)間戳
		nonceStr: data.nonceStr, // 必填,生成簽名的隨機(jī)串
		signature: data.signature, // 必填,簽名
		jsApiList: ['openLocation'], // 必填,需要使用的JS接口列表
	});
	wx.ready(() => {
		setTimeout(() => {
			wx.openLocation(locationObj);
		}, 500)
	});
};

?3.禁止分享代碼失效

問(wèn)題描述

在我們需要讓全局的所有頁(yè)面禁止微信復(fù)制,分享朋友圈等功能時(shí),莫名奇妙刷新后就又可以分享了,這里提供我的解決方案,在main.js或所有頁(yè)面的初始化文件中調(diào)用以下代碼,直接去除微信分享類(lèi)目的所有功能

?代碼思路

const hideShare = (data)=>{
	return new Promise((resolve, reject) => {
		wx.config({
			// debug: true,
			appId: data.appId,
			timestamp: data.timestamp,
			nonceStr: data.nonceStr,
			signature: data.signature,
			jsApiList: ['hideOptionMenu','hideAllNonBaseMenuItem','hideMenuItems'],
		});
		wx.ready(() => {
			wx.hideOptionMenu();
			wx.hideAllNonBaseMenuItem();
			wx.hideMenuItems({// 要隱藏的菜單項(xiàng),只能隱藏“傳播類(lèi)”和“保護(hù)類(lèi)”按鈕,所有menu項(xiàng)見(jiàn)附錄3
				menuList: [
					'menuItem:share:appMessage', //發(fā)送給朋友
					'menuItem:share:timeline', //分享到朋友圈
					'menuItem:copyUrl' //復(fù)制鏈接
				]
			})
		});
	});
}

以上就是我在對(duì)接微信JSSDK中碰到的一些問(wèn)題,如果對(duì)您有所幫助,歡迎您點(diǎn)個(gè)關(guān)注,我會(huì)定時(shí)更新技術(shù)文檔,大家一起討論學(xué)習(xí),一起進(jìn)步。

?一些H5對(duì)接微信JSSDK的問(wèn)題記錄文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-709983.html

到了這里,關(guān)于一些H5對(duì)接微信JSSDK的問(wèn)題記錄的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Android對(duì)接微信登錄記錄

    Android對(duì)接微信登錄記錄 - Stars-One的雜貨小窩 Android項(xiàng)目要對(duì)接下微信登錄,稍微記錄下踩坑點(diǎn) 在你的清單文件添加下面Activity聲明 注意這里 android:name=\\\"com.test.my.wxapi.WXEntryActivity\\\" 實(shí)際上,我的applicationId就是com.test.my 由于我的applicationId是 com.test.my , 但是由于我packageName不是這個(gè)

    2024年02月04日
    瀏覽(13)
  • 【消息中間件】原生PHP對(duì)接Uni H5、APP、微信小程序?qū)崟r(shí)通訊消息服務(wù)

    【消息中間件】原生PHP對(duì)接Uni H5、APP、微信小程序?qū)崟r(shí)通訊消息服務(wù)

    【uniapp】實(shí)現(xiàn)買(mǎi)定離手小游戲 Mqtt不同環(huán)境問(wèn)題太多,新手可以看下 《【MQTT】Esp32數(shù)據(jù)上傳采集:最新mqtt插件(支持掉線、真機(jī)調(diào)試錯(cuò)誤等問(wèn)題》 《一篇就夠:uniapp-Mqtt系列問(wèn)題詳細(xì)攻略(解決掉線、真機(jī)調(diào)試錯(cuò)誤等問(wèn)題)》 《解決微信小程序MQTT真機(jī)連接問(wèn)題與合法域名配置

    2024年02月14日
    瀏覽(21)
  • 微信小程序?qū)覵SE接口記錄

    微信小程序?qū)覵SE接口記錄 需求 :公司項(xiàng)目對(duì)接gpt,gpt產(chǎn)生的結(jié)果是分段返回,所以要求在產(chǎn)生結(jié)果時(shí),有打字機(jī)的效果。原本是由定時(shí)器調(diào)用,后來(lái)優(yōu)化改為服務(wù)端使用SSE接口。 小程序使用起來(lái)比較方便,但是要求小程序 基本庫(kù) 的版本需要在 2.20.2 以上。文檔地址移步這

    2024年02月15日
    瀏覽(24)
  • php對(duì)接微信公眾號(hào)掃碼登錄開(kāi)發(fā)實(shí)錄(H5微信掃描登錄、服務(wù)出現(xiàn)故障調(diào)試、模版消息設(shè)置、掃碼輪詢交互)

    php對(duì)接微信公眾號(hào)掃碼登錄開(kāi)發(fā)實(shí)錄(H5微信掃描登錄、服務(wù)出現(xiàn)故障調(diào)試、模版消息設(shè)置、掃碼輪詢交互)

    微信公眾號(hào)掃碼登錄在安全性、用戶體驗(yàn)和數(shù)據(jù)收集方面優(yōu)勢(shì)明顯,是目前許多應(yīng)用程序采用的登錄方式之一。 無(wú)需記住賬號(hào)密碼:用戶無(wú)需輸入和記住賬號(hào)和密碼,只需使用微信掃描二維碼即可快速登錄。 安全性高:微信采用 OAuth2.0 協(xié)議,將用戶信息傳遞給第三方應(yīng)用程

    2024年02月07日
    瀏覽(27)
  • weixin-java-pay對(duì)接微信V3支付記錄

    https://github.com/binarywang/weixin-java-pay-demo 這個(gè)demo里, 沒(méi)有v3版本的配置, 這里記錄一下 v3支付, 相對(duì)之前的版本來(lái)說(shuō), 更為安全, 也相對(duì)繁瑣一些, 而且請(qǐng)求和響應(yīng)都使用了json格式的數(shù)據(jù) 1. 配置 發(fā)起支付所需的配置有三個(gè)證書(shū)文件, 在商戶后臺(tái)申請(qǐng) apiclient_cert.p12 apiclient_key.pem ap

    2024年02月11日
    瀏覽(25)
  • 微信jssdk 簽名獲取方法

    using Google.Protobuf.WellKnownTypes; using System; using System.Collections; using System.Collections.Generic; using System.Runtime.InteropServices; using System.Security.Cryptography; using System.Text; using UnityEngine; using UnityEngine.Networking; using UnityEngine.Networking.Types; public class JsSdkTicket : MonoBehaviour { ? ? [DllImport(\\\"__Interna

    2024年02月12日
    瀏覽(13)
  • 記錄一下【微信小程序skyline模式的一些坑】

    最近在用這個(gè)skyline渲染模式開(kāi)發(fā)頁(yè)面,記錄一下遇到的一些坑,總結(jié)一下使用體驗(yàn): 快跑!run! 總結(jié)我遇到的不能接受的地方 無(wú)法使用css變量 ,基于 unocss或tailwind 原子化css,需要對(duì)css變量做額外的處理,有點(diǎn)難受了; wxss使用import導(dǎo)入公共wxss,不生效 ,難受加劇; 最新的

    2024年02月16日
    瀏覽(220)
  • 企業(yè)微信小程序用戶信息獲取以及JSSDK使用

    企業(yè)微信小程序用戶信息獲取以及JSSDK使用

    海馬匯與企業(yè)微信小程序 企業(yè)微信小程序訪問(wèn)的是在線子應(yīng)用(即可直接通過(guò)瀏覽器訪問(wèn)),因此只需將海馬匯打包部署到服務(wù)器上即可。 海馬匯子應(yīng)用目前使用過(guò)兩種模式: 純?cè)qR匯框架開(kāi)發(fā) 該模式所有子應(yīng)用/頁(yè)面都需要自己開(kāi)發(fā),不存在標(biāo)準(zhǔn)子應(yīng)用,因此開(kāi)發(fā)工

    2024年02月11日
    瀏覽(20)
  • 微信小程序?qū)游⑿胖Ц端鰡?wèn)題合集

    微信小程序?qū)游⑿胖Ц端鰡?wèn)題合集

    1. 后端使用微信官方sdk會(huì)簡(jiǎn)單很多,可以看看在第五個(gè)大標(biāo)題上。 2. 相關(guān)文檔匯總: ? ? ? ? 1、WxJava - MiniApp Java SDK 4.6.0 API ? ? ? ? 2、wechatpay-java/README.md at main · wechatpay-apiv3/wechatpay-java · GitHub ? ? ? ? 3、網(wǎng)絡(luò) | 微信開(kāi)放文檔 ? ? ? ? 4、開(kāi)發(fā)指引 - JSAPI支付 | 微信支付商

    2024年04月25日
    瀏覽(24)
  • stable-diffusion-webui一些問(wèn)題記錄

    1、中間有一個(gè)巨慢的clone操作,實(shí)際上自己能手動(dòng)clone git clone https://github.com/Stability-AI/stablediffusion.git git clone https://github.com/CompVis/taming-transformers.git git clone https://github.com/crowsonkb/k-diffusion.git git clone https://github.com/sczhou/CodeFormer.git git clone https://github.com/salesforce/BLIP.git

    2024年02月12日
    瀏覽(25)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包