Google支付 PHP端驗證訂單號的有效性

2021-07-10 08:56:35 字數 2105 閱讀 5418

1.建立api應用

apis console

2.獲得refresh_token

2.1訪問下面的位址

redirect_uri是上面步驟一中你填寫的uri

client_id 是建立成功後,谷歌給你的

2.2完操作後,瀏覽器會自動跳轉到你填寫的uri頁面,並跟上乙個code,類似於這樣的(4/ewdxd7b-ysq5cnnb-c2ii83kqx19.wp6198ti5zc7dj3uxol0t3arlxqmbwi)

3.3獲得refresh_token

//獲取refresh_token  

$url = "";

$data = array(

'grant_type'=>'authorization_code',

'code'=>'4/ewdxd7b-ysq5cnnb-c2ii83kqx19.wp6198ti5zc7dj3uxol0t3arlxqmbwi',

'client_id'=>'',

'client_secret'=>'',

'redirect_uri'=>'',

);$contents = $this->curl($url,$data);

echo

$contents;

如果成功,會獲得類似於這樣的返回

refresh_token後面不會出現,要儲存好,要通過這個,獲取access_token

//curl方法

private

function

curl

($url,$data=null,$method = null)

curl_setopt($ch, curlopt_header, 0);

curl_setopt($ch,curlopt_proxytype,curlproxy_socks5);//使用了socks5**

curl_setopt($ch,curlopt_proxy,'192.168.100.2');//**伺服器

curl_setopt($ch,curlopt_proxyport,'1080');//**埠

curl_setopt($ch, curlopt_ssl_verifypeer, false); //不驗證證書 https訪問的時候

curl_setopt($ch, curlopt_ssl_verifyhost, false); //不驗證證書 https訪問的時候

if($data)

$output = curl_exec($ch);

curl_close($ch);

return

$output;

}

3.訂單驗證

// 1.獲取access_token

$url = "";

$data_tmp = array(

'grant_type'=>'refresh_token',

'refresh_token'=>'上面獲取到的refresh_token',

'client_id'=>'',

'client_secret'=>'',

);$contents = $this->curl($url,$data_tmp,'post');

$contents = json_decode($contents,true);

$access_token = $contents['access_token'];

// 2.通過獲得access_token 就可以請求谷歌的 api介面,獲得訂單狀態

$contents = $this->curl($url);

$contents = json_decode($contents,true);

if($contents['consumptionstate'] == 0 && $contents['purchasestate'] == 0)

參考文件

php蘋果內購支付驗證

param string receipt data 付款後憑證 return array 驗證是否成功 21002 receipt data域的資料有問題 21003 receipt無法通過驗證 21004 提供的shared secret不匹配你賬號中的shared secret 21005 re...

支付寶pc端支付接入PHP實現

放入乙個外掛程式庫中,方便管理 1.發起支付 public function init 2.處理支付後的動作,比如更改訂單狀態為支付,跳轉到支付成功頁面等等 a.處理同步通知 同步通知處理 public function return url else 請根據您的業務邏輯來編寫程式 以上 僅作參考 ...

支付寶pc端支付接入PHP實現

放入乙個外掛程式庫中,方便管理 1.發起支付 public function init 2.處理支付後的動作,比如更改訂單狀態為支付,跳轉到支付成功頁面等等 a.處理同步通知 同步通知處理 public function return url else 請根據您的業務邏輯來編寫程式 以上 僅作參考 ...