无法使用curl

时间:2015-07-09 12:10:46

标签: php curl

我需要使用php上传文件。我有以下代码,我正在使用

<?php
  $file = realpath('hello_world.jpg');
  $ch = curl_init();
  curl_setopt($ch, CURLOPT_URL, 'http://api.newocr.com/v1/upload?key=*My key*');
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
  curl_setopt($ch, CURLOPT_POST, TRUE);
  curl_setopt($ch, CURLOPT_POSTFIELDS, array('file' => '@'.$file));
  $result = curl_exec($ch);
  echo $result;
  curl_close ($ch);
?>

执行时我收到错误消息

  

{“status”:“error”,“message”:“必须上传文件。   https://www.newocr.com/api/“}

但是当我手动制作表单并使用multipart上传图片时,它可以正常工作。我的代码有问题,或问题是API

从命令行执行此操作

curl -X POST -F "file=@hello_world.jpg" http://api.newocr.com/v1/upload?key=*my api key*

工作正常

3 个答案:

答案 0 :(得分:0)

curl_setopt($ch, CURLOPT_UPLOAD, TRUE);

答案 1 :(得分:0)

现在,它正在给予:

找不到404页面 找不到您要查找的页面。检查地址栏以确保您的网址拼写正确。如果一切都失败了,您可以访问我们的主页,链接如下。

访问主页

答案 2 :(得分:0)

我遇到了同样的问题。

解决方案:

<?php
    $result = exec('curl -H "Expect:" -F file=@'.realpath($file).' http://api.newocr.com/v1/upload?key=KEY');
    $result = json_decode($result, true);
    return $result;
?>