使用curl和php上传图像

使用curl和php上传图像,php,post,curl,Php,Post,Curl,我正在尝试将图像发布到dlvr.it提供的api, 我在本地服务器上运行相同的代码,没有错误,图像发布正常,但是当我上传相同的图像,相同的代码到我的服务器时,api返回给我一个106错误图像太大或类型错误。但它毫无意义,它和上传到本地服务器上的图像是一样的 这是我的代码: $url = 'http://api.dlvr.it/1/postToRoute.' . $format; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL,

我正在尝试将图像发布到dlvr.it提供的api, 我在本地服务器上运行相同的代码,没有错误,图像发布正常,但是当我上传相同的图像,相同的代码到我的服务器时,api返回给我一个106错误图像太大或类型错误。但它毫无意义,它和上传到本地服务器上的图像是一样的

这是我的代码:

$url = 'http://api.dlvr.it/1/postToRoute.' . $format;


    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
    //curl_setopt ($ch, CURLOPT_COOKIEJAR, dirname(__FILE__).'/test.cookie'); // replace this with /tmp or something like that
    curl_setopt($ch, CURLOPT_HEADER, 0);
    curl_setopt($ch, CURLOPT_POST, true);
    /*curl_setopt($ch, CURLOPT_VERBOSE, true);

    $verbose = fopen('php://temp', 'rw+');
    curl_setopt($ch, CURLOPT_STDERR, $verbose);*/



    $data = array(
        'key' => $this->get_key(),
        'id' => 769605,
        'msg' => "$msg",
      'media' =>'@' . realpath('tempimages/NlTtSYaVoKcLIgt11313XUeEiHfvOgnHfYU.jpg')




    curl_setopt($ch, CURLOPT_POSTFIELDS, $data);



    $result = curl_exec($ch);
    var_dump($result);
 if ($result === FALSE) {
  printf("cUrl error (#%d): %s<br>\n", curl_errno($ch),
       htmlspecialchars(curl_error($ch)));
  }

  /*rewind($verbose);
  $verboseLog = stream_get_contents($verbose);

  echo "Verbose information:\n<pre>", htmlspecialchars($verboseLog), "      </pre>\n";*/
有什么想法吗