最近的一個項目在進行二次分享的時候出現了問題,定製的文案描述及圖片都不能在分享後出現,如圖所示:ajax
通過十八般折騰,終於變成我想要的樣式了,如圖:api
下面講講具體如何實現的。安全
首先,明白咱們的需求是使由app分享到微信後的頁面能夠使用微信的二次分享功能作定製化的分享(如圖所示)微信
而後開始着手作相關功能開發。微信開發
根據微信開發文檔,知曉咱們須要調用微信的api,獲取對應的分享功能(朋友、朋友圈、qq)等,還須要一個對應的公衆號或者服務號。理清思路後,接下來介紹關於各部分的具體處理,見下:app
本地代碼處理:
-
- 公共號的app_id, app_secret生成accesstoken
- 發送account=「****」以及經64轉碼的分享連接進行ajax請求api.ffan.com/ffan/v2/wechat/accessToken
- 根據得到的data設置wx.config({…}),wx.ready(function(){分享到朋友圈/qq...})
公衆號/訂閱號處理:
-
- 在公衆號設置——功能設置——JS接口安全域名裏,設置須要進行分享的域名白名單
- 在開發——基本配置裏,設置開發者密碼(不要輕易改變)
- 並設置ip白名單(發送請求得到accesstoken的機器ip地址),通常即公司的外網出口
- 本身公司的或者用微信提供的api獲取access_token
綜上,咱們知道
微信二次分享定製化需三條件:
-
- 使用微信sdk,官方方法設置分享
- 有可以使用的微信服務號或者公衆號,且保證分享連接的域名在此號的受權域中
- 受權域的相關目錄裏有相應號中的受權校驗文件