Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/276.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Shopify脚本标记api返回400 HTTP错误_Php_Api_Curl_Shopify - Fatal编程技术网

Php Shopify脚本标记api返回400 HTTP错误

Php Shopify脚本标记api返回400 HTTP错误,php,api,curl,shopify,Php,Api,Curl,Shopify,当我向脚本标记发出创建脚本的请求时,Shopify返回HTTP 400错误 HTTP/1.1 400 Bad Request Server: nginx Date: Sat, 06 Feb 2016 22:16:00 GMT Content-Type: application/json; charset=utf-8 Transfer-Encoding: chunked Connection: keep-alive Status: 400 Bad Request X-Frame-Options:

当我向脚本标记发出创建脚本的请求时,Shopify返回HTTP 400错误

HTTP/1.1 400 Bad Request
Server: nginx
Date: Sat, 06 Feb 2016 22:16:00 GMT
Content-Type: application/json; charset=utf-8
Transfer-Encoding: chunked
Connection: keep-alive
Status: 400 Bad Request
X-Frame-Options: DENY
X-ShopId: 11511010
X-ShardId: 2
X-Shopify-Shop-Api-Call-Limit: 1/40
HTTP_X_SHOPIFY_SHOP_API_CALL_LIMIT: 1/40
X-Stats-UserId: 0
X-Stats-ApiClientId: 1253884
X-Stats-ApiPermissionId: 17250892
X-XSS-Protection: 1; mode=block; report=/xss-report/30fa40b7-e2b9-44a1-b6ef-a3b43b8b95e3?source%5Baction%5D=create&source%5Bcontroller%5D=admin%2Fscript_tags&source%5Bsection%5D=admin
X-Request-Id: 30fa40b7-e2b9-44a1-b6ef-a3b43b8b95e3
X-Dc: chi2,ash

{"errors":{"script_tag":"Required parameter missing or invalid"}}
以下是我的代码格式:

$request_headers[] = "X-Shopify-Access-Token:".$token_id;
$request_headers[] = "Content-Type : application/json";

$ch = curl_init('https://revestore.myshopify.com/admin/script_tags.json');
curl_setopt($ch , CURLOPT_HEADER, TRUE);
curl_setopt($ch , CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch , CURLOPT_FOLLOWLOCATION, TRUE);
curl_setopt($ch , CURLOPT_MAXREDIRS, 3);
curl_setopt($ch , CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch , CURLOPT_CONNECTTIMEOUT, 30);
curl_setopt($ch , CURLOPT_TIMEOUT, 30);
curl_setopt($ch , CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch , CURLOPT_POSTFIELDS, $args); 
curl_setopt($ch , CURLOPT_HTTPHEADER, $request_headers);

$response = curl_exec($ch);
curl_close($ch);            
print_r($response);
如果有人知道相关的解决方案,请帮助我。
提前感谢。

如果您想创建新的ScriptTag资源,您需要的唯一参数是
event
src

我认为设置
id
是导致问题的原因

(同时,丢失在处创建的
和在
处更新的
,这应该是Shopify在您分别创建/修改资源时创建的)

有关创建ScriptTag资源的文档:
解决我的问题。这里一切都好。只需要http\u build\u query($query\u string);处理JSON字符串。

我认为这不是php问题,请使用curl命令行尝试您的查询,当它在那里工作时,很容易将其应用到php。此错误可能是由于
$args
缺少
脚本标记
字段或包含无效字段造成的。因此,除了重要的一点之外,您基本上已经为我们提供了所有内容—
$args
的值。这是我的$args值,,$args=array(“script_tag”=>array(“event”=>“onload”,“id”=>“42343243”“创建于”=>“2015-08-24T14:01:47-04:00”,“更新于”=>“2015-08-24T14:01:47-04:00”,“src”=>”);$args=json编码($args);如果您想创建一个新的ScriptTag资源,您需要的唯一参数是
事件
src
。我认为设置
id
是导致问题的原因(同时,丢失
处创建的
处更新的
,它应该是由Shopify创建的)是的,我也试过只使用src和event,但不起作用。这是我的JSON:$args='{“script_tag”:{“event”:“onload”,“src”:“}}”;