【发布时间】:2015-06-01 13:49:39
【问题描述】:
我对此很陌生,所以希望它不是我错过的愚蠢的东西。我正在尝试为使用 API 的人创建订单。
我已经搜索了几个小时如何在 stackoverflow 上执行此操作,所有帖子都提供了很大的帮助。但现在我撞到了一堵砖墙。此代码在访问 PHP 页面时似乎没有抛出任何错误,也不会像预期的那样将商品从库存中取出。
我是否遗漏了一些非常简单的东西,还有没有办法检查它是否工作?
<?php
$today = date("D M j Y G:i:s T");
$data = array(
"order" => [
"order_number" => "",
"company_id" => 690094,
"billing_address_id" => 1018327,
"shipping_address_id" => 1018327,
"stock_location_id" => 16377,
"ship_at" => $today,
"issued_at" => $today,
"tax_type" => "exclusive",
"payment_status" => "unpaid",
"fulfillment_status" => "shipped",
"email" => null,
"reference_number" => 7784,
"status" => "fulfilled",
"order_line_items" => [
"quantity" => 1, "discount" => null, "price" => 1,
"tax_rate_override" => null, "freeform" => false,
"variant_id" => 6983077
],
],
);
$url ="https://api.tradegecko.com/orders/";
$str_data = json_encode($data);
function sendPostData($url, $str_data){
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Content-Type: application/json',
'Accept: application/json',
'http' => array(
'header' => "Authorization: Bearer 872ed5e72dfc7e4e0adaa7c663cab7d81415078fdbe4f486d085b718c93b3eb3")
)
);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POSTFIELDS,$str_data);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
$result = curl_exec($ch);
curl_close($ch); // Seems like good practice
return $result;
}
echo sendPostData($url, $str_data);
?>
【问题讨论】: