首页 > 解决方案 > 在 PHP 中通过 rest API 获取数据

问题描述

我正在尝试通过 unicommerce.com 的 PHP 中的 rest API 获取销售订单。问题是我无法理解通过 API 从服务器获取数据的参数。据我了解,我使用我的凭据成功地从此页面从服务器访问令牌获取数据。但由于参数很少,我试图获取销售订单,我无法理解我通过什么来获取数据。仅显示要传递的数据的页面 -

基本信息

姓名 细节
端点: /services/rest/v1/oms/saleorder/get
请求类型: 邮政
等级: 租户
方案: HTTPS
标题(内容类型): 应用程序/json
标头(授权): 承载 {access-token},例如:承载 b30f3aea-7978-49bb-9ea7-33eddfc80afa

我正在使用这样,但它不工作并显示错误 -{"error":"unauthorized","error_description":"An Authentication object was not found in the SecurityContext"}

https://subdomain.unicommerce.com/services/rest/v1/oms/saleorder/get?bearer=b30f3aea-7978-49bb-9ea7-33eddfc80afa

标签: phpapicurlfetchrest

解决方案


将 curl 与授权标头一起使用

$requestPayload = [
    'code' => 'string',
    'facilityCodes' => ['string']
];

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,"https://subdomain.unicommerce.com/services/rest/v1/oms/saleorder/get");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($requestPayload));  //Post Fields
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$headers = [
    'Content-Type: application/json',
    'Authorization: Bearer b30f3aea-7978-49bb-9ea7-33eddfc80afa',
];

curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);

$response = curl_exec ($ch);

curl_close ($ch);

var_dump($response);

推荐阅读