首页 > php curl模拟post中如何使用multipart上传文件

php curl模拟post中如何使用multipart上传文件

使用新浪微博api写图床时出现了20007错误,文档说需要用multipart上传文件。php中curl模拟post该如何用multipart上传文件?

我使用的代码:

$uri = "https://upload.api.weibo.com/2/statuses/upload.json";
$data = array (
        'access_token' => '',
        'status' => '',
        'pic' => ''
);
 
$ch = curl_init ();
curl_setopt ( $ch, CURLOPT_URL, $uri );
curl_setopt ( $ch, CURLOPT_POST, 1 );
curl_setopt ( $ch, CURLOPT_HEADER, 0 );
curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt ( $ch, CURLOPT_POSTFIELDS, $data );
$return = curl_exec ( $ch );
curl_close ( $ch );
 
print_r($return);

看 curl的代码应该是没有什么大问题 ,不知道是不是你几个值为空的原因,
"pic"=>"@/path/to/myfile.jpg",

当你的$data是数组的时候 curl自动会以multipart方式post的
再加一句,数组必须 为K=>v格式的数组

【热门文章】
【热门文章】