我想在我的网站上创建一个产品,并在广场上创建(这是有效的)。但是我也想设置初始库存,似乎没有办法从文档中做到这一点。 https://docs.connect.squareup.com/api/connect/v1/#post-inventory-variationid
如果我进入我的方形帐户,我可以手动设置初始金额,然后查询该条目并获取ID并更新它,但是谁想要手动执行任何操作。它打败了目的。有没有办法创建库存条目?
我的第二个困难是使用unirest上传图像。
function uploadItemImage($itemId, $image_file)
{
global $accessToken, $locationId, $connectHost;
$requestHeaders = array
(
'Authorization' => 'Bearer ' . $accessToken,
'Accept' => 'application/json',
'Content-Type' => 'multipart/form-data;'
);
$request_body = array
(
'image_data'=>Unirest\Request\Body::file($image_file, 'text/plain', myproduct.jpg')
);
$response = Unirest\Request::post($connectHost . '/v1/' . $locationId . '/items/'.$itemId.'/image', $requestHeaders, $request_body);
print(json_encode($response->type, JSON_PRETTY_PRINT));
}
其中$ itemId取自先前创建的产品,$ image_file是我服务器上文件的直接链接
我一直收到这个错误...
> PHP Fatal error: Uncaught exception 'Unirest\Exception' with message
> 'couldn't open file "https://somewebsite/myPicture.jpg" ' in
> rootFolder/Unirest/Request.php:479 Stack trace:
> #0 rootFolder/Unirest/Request.php(292): Unirest\Request::send('POST', 'https://connect...', Array, Array, NULL, NULL)
> #1 rootFolder/
非常感谢任何帮助!
答案 0 :(得分:0)
最大限度地利用您的问题的方法!
"https://somewebsite/myPicture.jpg"
,但似乎unirest认为您正在尝试使用网址而不是从您的文件系统获取文件。尝试以下curl命令,看看是否可以将所有部分匹配为unirest::)
curl --request POST \
--url https://connect.squareup.com/v1/XXXXXX/items/XXXXX/image \
--header 'authorization: Bearer sq0atp-XXXXX' \
--header 'cache-control: no-cache' \
--header 'content-type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW' \
--form image_data=@/Users/ManuEng13/Desktop/test.png