php調用jssdk.php,php調用印表機

本文目錄一覽:

怎麼使用微信JSSDK的自定義分享功能

登錄你的微信平台,點擊「公眾號設置」。

2

點擊「功能設置」,然後點擊「設置」。

3

設置JS介面安全域名。這裡填寫的是一級域名,不帶www和http。最多可以設置三個域名。設置完後點擊確定。(多說一句,相比以前的分享沒有任何域名限制,這裡設置安全域名,目的是為了當發現此公眾平台發現誘導分享行為時,可以根據此域名追溯到所有分享出去的鏈接,以及通過這些鏈接增加的粉絲。這樣,微信就可以牢牢控制了你的微信平台,一旦發現違規,讓分享鏈接失效,刪除掉誘導行為增加的粉絲,是瞬間就可以完成的。因此,微信平台的開發者,一定要合理來使用分享功能,不要因小失大。等到你的微信平台被封,估計哭都來不及)

4

在開發者中心中獲取你的AppID和AppSecret,接下來在獲取令牌時,需要這兩個信息。

5

獲取令牌。在伺服器端完成,代碼如下:

function wx_get_token() {

$token = S(‘access_token’);

if (!$token) {

$res = file_get_contents(‘;appid=’ .’你的AppID’.’secret=’ .’你的AppSecret’);

$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;

}

$url2 = sprintf(“;type=jsapi”,

$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,

‘要分享的url(從http開始,如果有參數,包含參數)’

);

$wxSha1 = sha1($wxOri);

END

步驟2 添加JS代碼

生成簽名後,就可以使用js代碼了。在你的html中,進行如下設置即可。

script type=”text/javascript” src=””/script

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: ‘分享標題’, // 分享標題

link:”分享的url,以http或https開頭”,

imgUrl: “分享圖標的url,以http或https開頭” // 分享圖標

});

// 獲取「分享給朋友」按鈕點擊狀態及自定義分享內容介面

wx.onMenuShareAppMessage({

title: ‘分享標題’, // 分享標題

desc: “分享描述”, // 分享描述

link:”分享的url,以http或https開頭”,

imgUrl: “分享圖標的url,以http或https開頭”, // 分享圖標

type: ‘link’, // 分享類型,music、video或link,不填默認為link

});

});

/script

微信jssdk.php需要修改么?可以直接用么?

?php

echo ‘ web-root = ‘.$_SERVER[‘DOCUMENT_ROOT’].’br’;

echo ‘ current-file = ‘.__FILE__.’br’;

echo ‘ current-dir = ‘.dirname(__FILE__).’br’;

echo ‘ http-root = ‘.$_SERVER[‘HTTP_HOST’].’br’;

echo ‘ web-position = ‘.$_SERVER[‘PHP_SELF’].’br’;

$file=’c:/webroot/index.php’;

echo ‘ file-position = ‘.$file.’br’;

$fileWebAddress=’http://’.str_replace($_SERVER[‘DOCUMENT_ROOT’],$_SERVER[‘HTTP_HOST’],$file);

echo ‘ file-web-position = ‘.$fileWebAddress.’br’;

?

我的網站是php網站要怎麼集成淘寶客jssdk

以LAMP兄弟連的課程安排來說主要學習一下內容:

1.SpringSecurity:目前最主流的安全解決方案,基於Spring。為基於JavaEE企業開發提供全面安全服務。

2.WebSphere:企業級應用伺服器。包含了編寫、運行和監視全天候的工業強度的隨需應變 Web應用程序和跨平台、跨產品解決方案所需要的整個中間件基礎設施。

3.負載均衡:高並發解決方案。能利用一個集群中的多台單機,響應更多的並發請求。

4.分散式系統:由網路互聯的多處理機體系結構上執行任務的系統。可有效提高系統的可擴展性、穩定性和執行效率

tp里怎麼引用jssdk.php

不是有例子嗎,你下載下來之後要用哪個介面可以相應的調用啊,不過你自己網站頁面要把相應的介面寫進去(這個在你下載的一個php文件裡面就有),不會的話把官方那一塊都直接粘貼進去,還有你公眾號得有相應的介面許可權,不會開發的話硪可以提供技術支持

微信公眾平台的jssdk.php起的什麼作用

那個jssdk.php就是你在php裡面要獲取用戶信息的頁面,那個可以直接調用用的,很方便。微信裡面好多都是用PHP做案例的。

微信公眾平台開發,oauth2.0認證地址,打開jssdk頁面無法驗證通過

給你個PHP的例子:

下面的代碼保存為get_sdkper.php

?php

require_once “jssdk.php”;

//1.注意:所有的JS介面只能在公眾號綁定的域名下調用,公眾號開發者需要先登錄微信公眾平台進入「公眾號設置」的「功能設置」里填寫「JS介面安全域名」。

//2.填寫appid和secret

$appid=”你的appid”;

$secret=”你的secret”;

$getUrl=$_POST[“url”];

$jssdk = new JSSDK($appid, $secret,$getUrl);

$signPackage = $jssdk-GetSignPackage();

echo(“{\”appId\”:\””.$signPackage[“appId”].”\”,\”timestamp\”:\””.$signPackage[“timestamp”].”\”,\”nonceStr\”:\””.$signPackage[“nonceStr”].”\”,\”signature\”:\””.$signPackage[“signature”].”\”,\”url\”:\””.$signPackage[“url”].”\”}”);

?

下面是調用方法:

//調用微信JS API介面

var GetappId=””,Gettimestamp=””,GetnonceStr=””,Getsignature=””;

function CallWechatJSAPI()

{

$.ajax({

url:”get_sdkper.php”,

type:”POST”,

data:”url=”+escape(location.href.split(‘#’)[0]),

dataType:”JSON”,

success:function(result){

var resultData = $.evalJSON(result);

if(resultData){

GetappId = resultData.appId;

Gettimestamp = resultData.timestamp;

GetnonceStr = resultData.nonceStr;

Getsignature = resultData.signature;

wx.config({

debug: false,

appId: GetappId,

timestamp: Gettimestamp,

nonceStr: GetnonceStr,

signature: Getsignature,

jsApiList: [

‘checkJsApi’,

‘onMenuShareTimeline’,

‘onMenuShareQQ’,

‘onMenuShareWeibo’,

‘hideMenuItems’,

‘hideAllNonBaseMenuItem’,

‘chooseImage’,

‘previewImage’,

‘uploadImage’,

‘downloadImage’,

‘getNetworkType’,

‘openLocation’,

‘getLocation’,

‘hideOptionMenu’,

‘closeWindow’,

‘scanQRCode’,

‘chooseWXPay’,

‘openProductSpecificView’,

‘addCard’,

‘chooseCard’,

‘openCard’

]

});

}

},

error:function(){

//alert(“連接網路失敗,請重試。”);

}

});

}

原創文章,作者:XDDN,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/146868.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
XDDN的頭像XDDN
上一篇 2024-10-31 15:33
下一篇 2024-10-31 15:33

相關推薦

  • PHP和Python哪個好找工作?

    PHP和Python都是非常流行的編程語言,它們被廣泛應用於不同領域的開發中。但是,在考慮擇業方向的時候,很多人都會有一個問題:PHP和Python哪個好找工作?這篇文章將從多個方…

    編程 2025-04-29
  • PHP怎麼接幣

    想要在自己的網站或應用中接受比特幣等加密貨幣的支付,就需要對該加密貨幣擁有一定的了解,並使用對應的API進行開發。本文將從多個方面詳細闡述如何使用PHP接受加密貨幣的支付。 一、環…

    編程 2025-04-29
  • 使用PHP foreach遍歷有相同屬性的值

    本篇文章將介紹如何使用PHP foreach遍歷具有相同屬性的值,並給出相應的代碼示例。 一、基礎概念 在講解如何使用PHP foreach遍歷有相同屬性的值之前,我們需要先了解幾…

    編程 2025-04-28
  • PHP獲取301跳轉後的地址

    本文將為大家介紹如何使用PHP獲取301跳轉後的地址。301重定向是什麼呢?當我們訪問一個網頁A,但是它已經被遷移到了另一個地址B,此時若伺服器端做了301重定向,那麼你的瀏覽器在…

    編程 2025-04-27
  • PHP登錄頁面代碼實現

    本文將從多個方面詳細闡述如何使用PHP編寫一個簡單的登錄頁面。 1. PHP登錄頁面基本架構 在PHP登錄頁面中,需要包含HTML表單,用戶在表單中輸入賬號密碼等信息,提交表單後服…

    編程 2025-04-27
  • PHP與Python的比較

    本文將會對PHP與Python進行比較和對比分析,包括語法特性、優缺點等方面。幫助讀者更好地理解和使用這兩種語言。 一、語法特性 PHP語法特性: <?php // 簡單的P…

    編程 2025-04-27
  • PHP版本管理工具phpenv詳解

    在PHP項目開發過程中,我們可能需要用到不同版本的PHP環境來試驗不同的功能或避免不同版本的兼容性問題。或者我們需要在同一台伺服器上同時運行多個不同版本的PHP語言。但是每次手動安…

    編程 2025-04-24
  • PHP數組去重詳解

    一、array_unique函數 array_unique是php中常用的數組去重函數,它基於值來判斷元素是否重複,具體使用方法如下: $array = array(‘a’, ‘b…

    編程 2025-04-24
  • PHP導出Excel文件

    一、PHP導出Excel文件列寬調整 當我們使用PHP導出Excel文件時,有時需要調整單元格的列寬。可以使用PHPExcel類庫中的setWidth方法來設置單元格的列寬。下面是…

    編程 2025-04-24
  • php擴展庫初探

    一、什麼是php擴展庫? PHP擴展庫(PHP extension)是一些用C語言編寫的動態鏈接庫,用於擴展PHP的功能。PHP擴展庫使得PHP可以與各種資料庫系統相連、SMTP、…

    編程 2025-04-23

發表回復

登錄後才能評論