天天看點

php微信開發傳回上一級報錯,微信jssdk開發,PHP,必要步驟

微信的文檔幾個重疊在一起,有點亂,自己用到就統計一下,減少字數直接上,畢竟懶。

一般說明步驟一:微信jssdk使用必須在微信公衆平台進入其公衆号設定,打開配置安全域名才可以。

安全域名則是請求調用微信接口的安全域名,非域名下則會出現權限錯誤,未授權域名等。

一般說明步驟二:引入其對應的JS檔案,這個基本知識不過多解釋

一般說明步驟三:引入檔案,調用其config接口,配置好對應的配置項即可

一般說明步驟四:通過ready接口裡配置的響應接口在頁面加載的時候就可以用,如果需要響應的就不需要放在這裡面,注意:所有的接口需要在config之後,config是其一個異步操作

一般說明步驟五:error的資訊報錯會執行error函數,錯誤資訊需要打開config中的debug

簡而言之就是如下步驟:

步驟一:配置安全域名(配置JS接口安全域名)

步驟二:引入JS檔案

步驟三:使用config接口,寫入配置

步驟四:在ready裡面配置需要在加載時候就可以用的接口

步驟五:error說明函數

假設調用成功,開啟了debug,那麼會提示:xxx:ok,xxx是你使用的接口名

假設調用使用者取消,開啟了debug,那麼會提示:xxx:cancel,xxx是你使用的接口名

調用失敗時:将會傳回具體錯誤資訊

以下是微信官方原版Demo:

注意,一定記得背景配置是否正确,配置js安全域名和appid以及secret

完整的一個微信分享Demo:分享示例

注意:重要提醒,在微信開發工具上面調試,千萬别信報錯,因為報錯有時候是bug,但是代碼是正确的,我寫微信分享,正确的代碼調試了一周,最後是工具的問題,用真機調試即可,工具就調樣式,大緻看看就ok,真機雙重檢驗

require_once "jssdk.php";//使用官方原版的即可

$jssdk = new JSSDK("這裡填寫你的appid", "你的AppSecret");//去微信公衆号裡面找

$signPackage = $jssdk->GetSignPackage();//取得簽名及其他必要資訊的資訊包

?>

//這裡使用wx調用config接口,填寫配置項

wx.config({

debug: true,

appId: '<?php echo $signPackage["appId"];?>',

timestamp: <?php echo $signPackage["timestamp"];?>,

nonceStr: '<?php echo $signPackage["nonceStr"];?>',

signature: '<?php echo $signPackage["signature"];?>',

jsApiList: [

// 所有要調用的 API 都要加到這個清單中

'onMenuShareAppMessage',

'onMenuShareTimeline',

'chooseWXPay',

'showOptionMenu',

"updateAppMessageShareData",

"hideMenuItems",

"showMenuItems",

"onMenuShareTimeline",

'onMenuShareAppMessage'

],success: function(res) {

// 以鍵值對的形式傳回,可用的api值true,不可用為false

// 如:{"checkResult":{"chooseImage":true},"errMsg":"checkJsApi:ok"}

}

});

wx.ready(function () { //需在使用者可能點選分享按鈕前就先調用

});

//wx.success(function(res){

// config資訊驗證失敗會執行error函數,如簽名過期導緻驗證失敗,具體錯誤資訊可以打開config的debug模式檢視,也可以在傳回的res參數中檢視,對于SPA可以在這裡更新簽名。

//});