【问题标题】:curl: (26) couldn't open filecurl:(26)无法打开文件
【发布时间】:2014-07-06 23:20:51
【问题描述】:

当我尝试通过 curl 调用 box api 时出现此错误。

curl: (26) couldn't open file

找不到原因!我用正确的文件名调用这个 api-

curl https://upload.view-api.box.com/1/documents \
-H "Authorization: Token YOUR_API_TOKEN" \
-H "Content-type: multipart/form-data" \
-F file=@A_correct_file_name

我已经看到所有三个已经提出的问题,但其中 2 个没有答案,一个是特定于 facebook 的。

cURL error 26 couldn't open file

Fatal error: Uncaught CurlException: 26: couldn't open file "" thrown in

Getting Fatal Error Uncaught CurlException: 26: couldn't open file

【问题讨论】:

  • 你检查权限了吗?
  • @Shubham 我已经在包含文件的目录中完成了这个 'chmod 777 .'。这还不够吗?

标签: php api curl box-api


【解决方案1】:

我正在使用 PlateRecognizer.com 来保护我从行车记录仪的视频中分离出来的照片中的车牌信息。我对确切的代码有很多问题。 PlateRecognizer 没有在他们的帮助部分提供正确的信息。

我使用 Windows 10 笔记本电脑工作。这段代码最终对我有用:

curl -F upload=@/”Users/Me/Desktop/Driver1.mp4” -F regions=us-az -H “Authorization: Token 4892e779f97d879df6453” https://api.platerecognizer.com/v1/plate-reader/

记下文件路径和名称周围的双引号,而不是单引号。

【讨论】:

    【解决方案2】:

    就我而言,使用相对路径不起作用。但是将其更改为绝对路径可以解决问题。

    这失败了

    curl -i -X POST -H "Content-Type: multipart/form-data" \
        -F "file=@~/Downloads/xxx.csv" http://localhost:6708/upload
    

    成功了

    curl -i -X POST -H "Content-Type: multipart/form-data" \
        -F "file=@/Users/myself/Downloads/xxx.csv" http://localhost:6708/upload
    

    【讨论】:

      【解决方案3】:

      Luis Cruz 是正确的:文件名周围需要引号,但我需要使用“file”关键字,而不是“fileUpload”,如问题所示。

      curl -X GET \
      -H 'Content-Type: multipart/form-data' \
      -F file=@"/path/to/file.ext" \ 
      'http://host:port/path/to/dir'
      

      【讨论】:

        【解决方案4】:

        @Guilherme 的相对路径也有类似的问题。我正在运行我的 bash 脚本:

        bash test/script.sh
        

        但是,我的文件与 bash 脚本位于同一目录级别,而不是 test 目录(我从中调用 bash),因此脚本找不到我的文件。

        我的解决方案:
        1. cd 进入 /test 并从那里运行 bash script.sh
        2. 使用绝对路径

        【讨论】:

          【解决方案5】:

          我今天早上遇到了这个问题,但我解决了这个问题

          fileUpload=@\"file, with comma .txt\"
          

          因此,如果文件名中有逗号(\"),则必须在文件名周围加上双引号

          【讨论】:

            【解决方案6】:

            我在更改为 PHP 5 后遇到了类似的问题(我使用的是 @ 上传方法,它已被弃用,所以我不得不开始使用 CURLFile),我的问题的解决方案是在这个stack.

            解决方案: curl 上传无法使用相对路径,请改用完整路径

            【讨论】:

              【解决方案7】:

              对不起各位!我的错。我没有在文件名中包含文件的扩展名。包含它之后,它起作用了。我正在回答这个问题,以防将来有人犯同样的错误。

              【讨论】:

              • 赞成,因为这帮助我发现我修改了文件名。
              猜你喜欢
              • 1970-01-01
              • 2021-04-14
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2020-12-03
              • 2019-01-06
              • 2012-01-24
              • 2017-03-15
              相关资源
              最近更新 更多