curl:(26)无法打开文件

hal*_*bra 16 php api curl box-api

当我试图通过卷曲调用盒子api时,我收到了这个错误.

curl: (26) couldn't open file
Run Code Online (Sandbox Code Playgroud)

找不到原因!我用正确的文件名称这个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
Run Code Online (Sandbox Code Playgroud)

我已经看到了所有三个已经问过的问题,但其中有两个没有答案,一个是针对facebook的.

cURL错误26无法打开文件

致命错误:未捕获的CurlException:26:无法打开文件""

获取致命错误未捕获CurlException:26:无法打开文件

Gui*_*omé 27

在更改为PHP 5之后我遇到了类似的问题(我使用的是@上传方法并且它已被弃用,因此我不得不开始使用CURLFile),并且在此堆栈中找到了我的问题的解决方案.

解决方案: curl upload不适用于相对路径,而是使用完整路径

  • 太好了,它解决了我的问题!谢谢! (2认同)

hal*_*bra 11

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


Edm*_*Lee 8

就我而言,使用相对路径不起作用。但是将其更改为绝对路径可以修复它。

这失败了

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

这有效

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


小智 7

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

fileUpload=@\"file, with comma .txt\"
Run Code Online (Sandbox Code Playgroud)

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