1

我正在尝试新的 PayPal REST API,我想学习如何使用 PHP/curl 来使用它。

我是使用 curl 的新手,所以请原谅...

从贝宝开发人员文档中,我收集了必填字段,并将以下内容放在一起:

$ch = curl_init();
$postDataArray = array("grant_type=client_credentials");
curl_setopt($ch, CURLOPT_POSTFIELDS, $postDataArray);
curl_setopt($ch, CURLOPT_URL, 'https://api.sandbox.paypal.com/v1/oauth2/token');
$headerArray = array('Accept: application/json','Accept-Language: en_US');
curl_setopt($ch, CURLOPT_HTTPHEADER, $headerArray);
$clientID_Secret = "clientID:secret";
curl_setopt($ch, CURLOPT_USERPWD, $clientID_Secret);

由于谷歌搜索,我添加了接下来的几行。

curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_COOKIEJAR, "my_cookies.txt");
curl_setopt($ch, CURLOPT_COOKIEFILE, "my_cookies.txt");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

$result = curl_exec($ch);
print_r($result);

这不返回任何内容。请帮忙。

4

2 回答 2

4

这是一个示例:https ://github.com/paypal/rest-api-curlsamples/blob/master/execute_all_calls.php

复制 curl 特定代码:

$curl = curl_init($url); 
curl_setopt($curl, CURLOPT_POST, true); 
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl, CURLOPT_USERPWD, $clientId . ":" . $clientSecret);
curl_setopt($curl, CURLOPT_HEADER, false); 
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); 
curl_setopt($curl, CURLOPT_POSTFIELDS, $postdata); 
于 2013-03-12T19:11:50.870 回答
1

您的代码正在运行。但是你必须改变这个 $postDataArray = array("grant_type=client_credentials"); 到 $postDataArray = "grant_type=client_credentials";。需要去掉数组类型;

于 2013-03-30T04:35:49.487 回答