国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

微信公眾平臺JSSDK分享接口開發(PHP實現)

banana_pi / 1248人閱讀

摘要:最近做個移動端的應用,要實現自定義微信分享功能,實現過程中遇到一些小小的坑,這里分享一下。后來微信放出了,開始對端提供豐富強大的官方接口支持,也逐漸淡出了開發者的視野。

最近做個移動端的H5應用,要實現自定義微信分享功能,實現過程中遇到一些小小的坑,這里分享一下。

以前微信官方是沒有正式支持微信分享的自定義接口(包括圖片、標題、描述)的,然而有一些大神找到了WeixinJSBridge這個強大的“對象”,一個方法調用就輕而易舉地實現了分享功能。

后來微信放出了JSSDK,開始對H5端提供豐富、強大的官方接口支持,WeixinJSBridge也逐漸淡出了開發者的視野。

然而這個JSSDK的調用方法,實現起來卻并不是太容易。難點不在于技術上,而是業務流程上。雖然是一個前端的接口,但是為了安全性,微信要求開發者進行服務端的驗證,而這個驗證竟然還要分兩步來進行……如此一來,對于僅僅是想要實現一個“分享到朋友圈”功能的人來說,真是有點叫人吐血。

事實上呢,這個后端的兩步驗證,對于熟悉微信開發流程的人來說,也是很合理的。因為第一步,獲取“AccessToken”,是所有微信業務的起點;而第二步,獲取JSApi的簽名,才是使用JSSDK對應的需求。如果說項目上本來就針對微信進行了一些開發,這點需求應該是可以很快解決了。

好了,廢話到此結束,下面說后端接口具體實現步驟。接口的實現是基于PHP語言的,PHP的語法簡單明了,相信各位不熟悉這門語言的同學應該能夠理解;代碼已經托管在OSChina上開源共享,可以下載使用;鏈接見文章末尾。

第一步,官方文檔是一定要細讀的。然后你的微信公眾號已經通過認證,這點是不用提醒的吧?

第二步,綁定安全域名。公眾號后臺左菜單 -> 設置 -> 公眾號設置 -> 功能設置 -> JS接口安全域名。注意這里填寫頂級域名的話,對其所有子域名都是有效的。所以為了有效利用三個名額,最好直接填寫頂級域名。

第三步,寫代碼了。這里虛擬了一個項目,包括前端和服務端的實現。

代碼:http://git.oschina.net/w2ex/snipets/tree/master/weixinapi
演示:http://snipets.willizm.cn/weixinapi/webapp/

項目目錄結構:

/
/data     數據目錄,用來存放微信端獲取到的AccessToken和Ticket數據
/lib      
/lib/Weixin.class.php 微信接口類庫
/webapp   前端示例
/webapp/index.html
/webapp/main.js
/api.php  服務端接口示例,這里演示了對jsonp的支持
/config.php  配置文件,包括appId、appSecret、數據目錄,順帶支持SAE環境
/callback.php   微信回調接口,代碼直接拷貝微信文檔中的Demo

重點在于Weixin.class.php中三個方法的實現:getAccessToken、getTicket、createSignature。這三個方法各自有一些注意事項,前面兩個都要求用戶在服務端緩存微信接口返回的數據,因此在每次調用時都要檢查一下是否已經過期;第三個方法則有兩點容易犯低級錯誤:其一,前端傳過來的url是不需要hash部分(就是#及其后面的一段)的,這個前端需要注意;其二,服務端簽名算法中拼接字符串時nonceStr是全部小寫的,應寫成noncestr,再就是要注意拼接的順序不能錯。

前端部分,除了上面說的傳遞url時需要去掉hash外,還需注意,業務邏輯應盡可能wx.ready中調用,以避免網絡延遲帶來的問題。開發調試時記得開啟調試選項,這樣就可以根據彈出的錯誤碼來對照文檔排查問題。

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/21225.html

相關文章

  • 微信公眾平臺JSSDK分享接口開發PHP實現

    摘要:最近做個移動端的應用,要實現自定義微信分享功能,實現過程中遇到一些小小的坑,這里分享一下。后來微信放出了,開始對端提供豐富強大的官方接口支持,也逐漸淡出了開發者的視野。 最近做個移動端的H5應用,要實現自定義微信分享功能,實現過程中遇到一些小小的坑,這里分享一下。 以前微信官方是沒有正式支持微信分享的自定義接口(包括圖片、標題、描述)的,然而有一些大神找到了WeixinJSBridge...

    MonoLog 評論0 收藏0
  • thinkphp3.2,微信JS-SDK開發過程中遇到的各種問題與細節分享

    摘要:備注登錄后可在開發者中心查看對應的接口權限。下載官網提供的示例代碼,參照中的代碼一步一步來實現。否則分享后的頁面會簽名失敗返回的與分享的是否一致 首先完成官方文檔前兩步(很好理解就不具體說了):步驟一:綁定域名先登錄微信公眾平臺進入公眾號設置的功能設置里填寫JS接口安全域名。備注:登錄后可在開發者中心查看對應的接口權限。步驟二:引入JS文件在需要調用JS接口的頁面引入如下JS文件,(支...

    miya 評論0 收藏0
  • 微信公眾平臺網頁開發實戰--1.微信分享一個網頁到朋友圈

    摘要:點擊右上角的分享到朋友圈按鈕,會看到如圖所示的。圖測試用例分享界面圖分享到朋友圈圖分享到朋友圈成功提示微信公眾平臺網頁開發實戰混合開發解密歡迎一起交流本書 對微信的JSSDK進行封裝一下,創建一份類似的文件結構,增加index.html與shareApi.js文件,結構如圖3.3所示。showImg(https://segmentfault.com/img/bVPdlg?w=145&h...

    wums 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<