数据请求在PHP中使用cURL?
我在使用PHP cURL发布API时遇到困难。 我觉得我已经尝试了各种组合。 我的脚本正在连接,但问题在有效负载内。
根据文件,这是所要求的要求。
--85b890d4-4faf-4261-bcbb-187c4dddcbc6 Content-Type:application / vnd.emc.ax + json; charset = utf-8内容处理:表单数据; 名称=数据
{
"Name": "batch name",
"Description": "batch description",
"Private": false
}
--85b890d4-4faf-4261-bcbb-187c4dddcbc6 Content-Type:application / bin Content-Disposition:form-data; 名称=斌; 文件名=“检验.pdf”; 文件名* = UTF-8''test.pdf
// bin文件内容
--85b890d4-4faf-4261-bcbb-187c4dddcbc6 Content-Type:application / bin Content-Disposition:form-data; 命名=注释; 文件名= “0100002m.ano”; 文件名* = UTF-8''0100002m.ano
//注释文件内容
--85b890d4-4faf-4261-bcbb-187c4dddcbc6 Content-Type:application / bin Content-Disposition:form-data; 名称=文本; 文件名= “test.txt的”; 文件名* = UTF-8''test.txt
// ocr文件内容
--85b890d4-4faf-4261-bcbb-187c4dddcbc6--
这是我的代码
$file = file_get_contents("tiff/test.TIF");
$curl = curl_init();
$data = array(
'Content-Type: application/vnd.emc.ax+json; charset=utf-8 Content Disposition: form-data; name=data',
'{"Name":"Here is my Name","Description":"Testing This","Private":false}',
chunk_split(base64_encode($file))
);
curl_setopt_array($curl, array(
CURLOPT_URL =>"*********************************",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => $d,
CURLOPT_HTTPHEADER => array(
"Authorization: **********************************",
"Content-Type: multipart/form-data; boundary=85b890d4-4faf-4261-bcbb-187c4dddcbc6",
),
));
curl_close($curl);
我的代码产生这个错误:
{“ErrorCode”:9999,“Message”:“MIME多部分流的意外结束,MIME多部分消息未完成。”,“InnerException”:null}
有人会帮助我吗?
我做了一个使用纯CURL上传多部分文件的实现。 尝试这个:
curl -X POST
http://youhosturl/path/to/you/endpoint
-H 'content-type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW'
-F 'my_file=@/Users/MyUser/Desktop/any-image.jpg'
这对我有效
链接地址: http://www.djcxy.com/p/48901.html