首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何使用json postfield卷曲?

如何使用json postfield卷曲?
EN

Stack Overflow用户
提问于 2018-08-13 02:08:14
回答 1查看 107关注 0票数 0

下面是我的代码:

代码语言:javascript
复制
$pp = curl_init();
curl_setopt($pp, CURLOPT_URL, "https://api.paypal.com/v1/payments/billing-plans");
curl_setopt($pp, CURLOPT_HEADER, false);
curl_setopt($pp, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($pp, CURLOPT_SSLVERSION , 6);
curl_setopt($pp, CURLOPT_POST, true);
curl_setopt($pp, CURLOPT_RETURNTRANSFER, true); 
curl_setopt($pp, CURLOPT_POSTFIELDS, "page_size=3&status=ALL&page=1&total_required=yes");
curl_setopt($pp, CURLOPT_HTTPHEADER, array(
    "Content-Type: application/json",
    "Authorization: Bearer $token"
));

$result_pp = curl_exec($pp);
echo $result_pp;

下面是我得到的错误:

代码语言:javascript
复制
{"name":"MALFORMED_REQUEST","message":"The request JSON is not well formed.","information_link":"https://developer.paypal.com/webapps/developer/docs/api/#MALFORMED_REQUEST","debug_id":"b742c35fe6e0e"}

这是文档链接:

代码语言:javascript
复制
https://developer.paypal.com/docs/api/payments.billing-plans/v1/#billing-plans_list

基本上我只是想拉出我所有PayPal订阅的列表,但看起来我没有正确地用JSON发送一些东西……

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-08-13 02:14:07

由于您发送的是POST请求,API认为您正在尝试create a billing plan,因此,您的post数据应为json格式-但事实并非如此。

根据文档,对于list your plans,请求类型应该是GET。所以你需要在url中添加你的params:

代码语言:javascript
复制
curl_setopt($pp, CURLOPT_URL, "https://api.paypal.com/v1/payments/billing-plans?page_size=3&status=ALL&page=1&total_required=yes");

并删除这两行:

代码语言:javascript
复制
curl_setopt($pp, CURLOPT_POST, true);
curl_setopt($pp, CURLOPT_POSTFIELDS, "page_size=3&status=ALL&page=1&total_required=yes");

重要的是要理解,许多RESTful API使用请求类型来区分同一端点上的操作。根据接口的不同,PATCHPOSTPUTGETDELETE请求可能都有不同的含义。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51811526

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档