簡體   English   中英

將 curl 轉換為 php OAuth2.0 令牌生成錯誤

[英]convert curl to php OAuth2.0 Token Generate Error

<?php

$certFile = "/etc/apache2/ssl/thasaix/thasaix_com.crt";
$keyFile = "/etc/apache2/ssl/thasaix/thasaix.com.key";
$curl = curl_init();
curl_setopt($curl, CURLOPT_SSLCERT, $certFile);
curl_setopt($curl, CURLOPT_SSLKEY, $keyFile);
curl_setopt($curl, CURLOPT_URL, 'https://openapi-test.kasikornbank.com/v2/oauth/token');
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_POST, 1);
$headers = array();
$headers[] = 'Content-Type: application/x-www-form-urlencoded';
$headers[] = 'Authorization: Basic R1FRWkZWcGpJQ0E5Y2xScUFQZVowODhSQTVYTFgzNzk6QTNLNkxjVHU3OTZ1QTZtxxyy';
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
$data = array('grant_type' => 'client_credentials');
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
$response = curl_exec($curl);
curl_close($curl);
print $response;

?>


curl --cert /etc/apache2/ssl/thasaix/thasaix_com.crt
--key /etc/apache2/ssl/thasaix/thasaix.com.key
--location --request POST 'https://openapi-test.kasikornbank.com/v2/oauth/token'
--header '內容類型:應用程序/x-www-form-urlencoded'
--header '授權:基本 R1FRWkZWcGpJQ0E5Y2xScUFQZVowODhSQTVYTFgzNzk6QTNLNkxjVHU3OTZ1QTZtxxyy'
--data-urlencode 'grant_type=client_credentials'

結果是

{ "code": "openapi_error", "message": "OAuth2.0 令牌生成錯誤" }

使用這些標題

curl_setopt($curl, CURLOPT_HTTPHEADER, array(
    'Authorization: Basic R1FRWkZWcGpJQ0E5Y2xScUFQZVowODhSQTVYTFgzNzk6QTNLNkxjVHU3OTZ1QTZtxxyy',
    'Content-Type: application/x-www-form-urlencoded')
);

--data-urlencode 'grant_type=client_credentials'

應該是正文部分然后我更改代碼並且它可以工作

curl_setopt($curl, CURLOPT_POSTFIELDS, "grant_type=client_credentials");

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM