本文目錄一覽:
- 1、怎麼使用微信JSSDK的自定義分享功能
- 2、php 微信分享怎麼知道誰分享的
- 3、如何在DISCUZ論壇引入微信JSSDK與分享功能
- 4、如何使用微信JS-SDK實際分享功能
- 5、如何使用微信JS-SDK實際分享功能?
- 6、thinkphp結合微信jssdk文檔 第一次轉發朋友圈跳轉鏈接 第二次不用在轉發就可以獲取跳轉的鏈接怎麼做??
怎麼使用微信JSSDK的自定義分享功能
一,首先在公眾號管理後台「公眾號設置」的「功能設置」里填寫JS接口安全域名,域名需要通過ICP備案,沒有備案域名可以用SAE、BAE等平台。此外,自定義分享功能需要通過微信認證才能使用,沒有認證的可以跟關係好的朋友借用權限,在他的JS接口安全域名設置這裡填上你的域名和共享同一個開發者ID。
二,在需要調用JS接口的頁面引入微信JSSDK的JS文件:,這個文件在需要分享的頁面是必須要引用的,單獨特別重申一下,其他方面請閱讀官方文檔
引用方法:在網頁title標題下面加上:script src=””/script
三,下載官方示例代碼:
解壓之後在例如PHP文件夾中看到以下文件:
四,複製以上文件到你的遊戲目錄,為了方便所有遊戲調用同一個文件,建議在主機根目錄(即一級目錄)建立一個JSSDK文件夾。
五,在你需要自定義分享的網頁源文件上(主機需支持PHP環境,網頁文件名.html改成.php)引用JSSDK:
在網頁頭部加上如下代碼:
php 微信分享怎麼知道誰分享的
微信用戶進入時,獲取當前微信用戶的信息(好像只能是服務號),可存session中
引入微信的js sdk,寫分享方法,分享成功後,可以用ajax請求,然後在後台處理,記錄分享用戶、分享數據信息
如何在DISCUZ論壇引入微信JSSDK與分享功能
首先在公眾號管理後台「公眾號設置」的「功能設置」里填寫JS接口安全域名,域名需要通過ICP備案,沒有備案域名可以用SAE、BAE等平台。自定義分享功能需要通過微信認證才能使用,沒有認證的可以跟關係好的朋友借用權限,在他的JS接口安全域名設置這裡填上你的域名和共享同一個開發者ID。沒有認證微信號的,可參考文章末尾的辦法。
2、下載官方示例代碼:jssdk-php.zip
下載後解壓,然後在DZ根目錄新建一個文件夾命名為jssdk 把解壓得到的jssdk.php直接上傳到剛建設好的文件夾中。
3、修改header.htm模板文件
在DZ模板文件header.htm中添加如下代碼
如何使用微信JS-SDK實際分享功能
1登錄你的微信平台,點擊「公眾號設置」。
2
點擊「功能設置」,然後點擊「設置」。
3
4
在開發者中心中獲取你的AppID和AppSecret,接下來在獲取令牌時,需要這兩個信息。
5
獲取令牌。在服務器端完成,代碼如下:
function wx_get_token() {
$token = S(‘access_token’);
if (!$token) {
$res = json_decode($res, true);
$token = $res[‘access_token’];
// 注意:這裡需要將獲取到的token緩存起來(或寫到數據庫中)
// 通過此接口返回的token的有效期目前為2小時。令牌失效後,JS-SDK也就不能用了。
// 因此,這裡將token值緩存1小時,比2小時小。緩存失效後,再從接口獲取新的token,這樣
// 就可以避免token失效。
// S()是ThinkPhp的緩存函數,如果使用的是不ThinkPhp框架,可以使用你的緩存函數,或使用數據庫來保存。
S(‘access_token’, $token, 3600);
}
return $token;
}
注意:返回的access_token長度至少要留夠512位元組。接口返回值:
{“access_token”:”ACCESS_TOKEN”,”expires_in”:7200}
{“access_token”:”vdlThyTfyB0N5eMoi3n_aMFMKPuwkE0MgyGf_0h0fpzL8p_hsdUX8VGxz5oSXuq5dM69lxP9wBwN9Yzg-0kVHY33BykRC0YXZZZ-WdxEic4″,”expires_in”:7200}
6
獲取jsapi的ticket。jsapi_ticket是公眾號用於調用微信JS接口的臨時票據。正常情況下,jsapi_ticket的有效期為7200秒,通過access_token來獲取。
function wx_get_jsapi_ticket(){
$ticket = “”;
do{
$ticket = S(‘wx_ticket’);
if (!empty($ticket)) {
break;
}
$token = S(‘access_token’);
if (empty($token)){
wx_get_token();
}
$token = S(‘access_token’);
if (empty($token)) {
logErr(“get access token error.”);
break;
}
$token);
$res = file_get_contents($url2);
$res = json_decode($res, true);
$ticket = $res[‘ticket’];
// 注意:這裡需要將獲取到的ticket緩存起來(或寫到數據庫中)
// ticket和token一樣,不能頻繁的訪問接口來獲取,在每次獲取後,我們把它保存起來。
S(‘wx_ticket’, $ticket, 3600);
}while(0);
return $ticket;
}
接口返回值:
{“errcode”:0,”errmsg”:”ok”,”ticket”:”sM4AOVdWfPE4DxkXGEs8VMKv7FMCPm-I98-klC6SO3Q3AwzxqljYWtzTCxIH9hDOXZCo9cgfHI6kwbe_YWtOQg”,”expires_in”:7200}
7
簽名,將jsapi_ticket、noncestr、timestamp、分享的url按字母順序連接起來,進行sha1簽名。
noncestr是你設置的任意字符串。
timestamp為時間戳。
$timestamp = time();
$wxnonceStr = “任意字符串”;
$wxticket = wx_get_jsapi_ticket();
$wxOri = sprintf(“jsapi_ticket=%snoncestr=%s×tamp=%surl=%s”,
$wxticket, $wxnonceStr, $timestamp,
);
$wxSha1 = sha1($wxOri);
END
步驟2 添加JS代碼
生成簽名後,就可以使用js代碼了。在你的html中,進行如下設置即可。
script type=”text/javascript”
// 微信配置
wx.config({
debug: false,
appId: “你的AppID”,
timestamp: ‘上一步生成的時間戳’,
nonceStr: ‘上一步中的字符串’,
signature: ‘上一步生成的簽名’,
jsApiList: [‘onMenuShareTimeline’, ‘onMenuShareAppMessage’] // 功能列表,我們要使用JS-SDK的什麼功能
});
// config信息驗證後會執行ready方法,所有接口調用都必須在config接口獲得結果之後,config是一個客戶端的異步操作,所以如果需要在 頁面加載時就調用相關接口,則須把相關接口放在ready函數中調用來確保正確執行。對於用戶觸發時才調用的接口,則可以直接調用,不需要放在ready 函數中。
wx.ready(function(){
// 獲取「分享到朋友圈」按鈕點擊狀態及自定義分享內容接口
wx.onMenuShareTimeline({
title: ‘分享標題’, // 分享標題
});
// 獲取「分享給朋友」按鈕點擊狀態及自定義分享內容接口
wx.onMenuShareAppMessage({
title: ‘分享標題’, // 分享標題
desc: “分享描述”, // 分享描述
type: ‘link’, // 分享類型,music、video或link,不填默認為link
});
});
/script
如何使用微信JS-SDK實際分享功能?
首先你得有個認證的公眾號,或則有微信開發平台認證賬戶,
然後根據js-sdk文檔進行開發
thinkphp結合微信jssdk文檔 第一次轉發朋友圈跳轉鏈接 第二次不用在轉發就可以獲取跳轉的鏈接怎麼做??
你可以這麼做,數據庫裏面有一個字段是來判斷是不是第一次,字段為1的話就是已經轉發過了,為0的話就是還沒有轉發,如果為1你就不要執行jssdk的分享
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/271804.html