CurlFile()导致提交JSON字符串而不是文件数据

时间:2017-07-20 17:31:35

标签: php curl php-curl

我使用CurlFile()POST cURL个文件用于我们的服务器。但是,我没有收到实际文件;我只是接收看起来是由CurlFile() ...

创建的对象的JSON表示

我做错了什么?

代码:

$args['thumbnail'] = new CurlFile('/home/xyz/public_html/wp/wp-content/uploads/2016/03/11814129_M.jpg', 'image/jpeg', 'image.jpg');
curl_setopt($curl_handle, CURLOPT_POSTFIELDS, $args);

服务器上收到的内容:

array(6) {
  ...
  ["thumbnail"]=>
  string(133) "{"name":"\/home\/xyz\/public_html\/wp\/wp-content\/uploads\/2016\/03\/11814129_M.jpg","mime":"image\/jpeg","postname":"image.jpg"}"
  ...
}

1 个答案:

答案 0 :(得分:0)

我明白了。看起来我使用的Facebook SDK是一个问题,而不是PHP / cURL:

  

可悲的是,当Curl对此感到满意时,Facebook PHP SDK(v3.2.2)   不是。事实证明,SDK会将您发送的任何值转换为该值   params数组成一个字符串。

更多信息:https://philsturgeon.uk/php/2013/08/29/curlfile-and-the-facebook-sdk-in-php-55/