2014-05-19 2 views
6

curl을 통해 상자 api를 호출하려고 할 때이 오류가 발생합니다.curl : (26) 파일을 열 수 없습니다.

curl: (26) couldn't open file 

이유를 찾을 수 없습니다! 나는 모든 세 가지 이미 묻는 질문을 보았다 그러나 그들의 2가 답이고 하나는 페이스 북에 특정

curl https://upload.view-api.box.com/1/documents \ 
-H "Authorization: Token YOUR_API_TOKEN" \ 
-H "Content-type: multipart/form-data" \ 
-F [email protected]_correct_file_name 

이름 - 올바른 파일이 API를 호출하고 있습니다.

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

+2

당신이 권한을 확인 했에서 bash는 script.sh를 실행? – Shubham

+1

@Shubham 파일을 포함하고있는 디렉토리에 ** ** 'chmod 777. **'을 작성했습니다. 그게 충분하지 않니? – halkujabra

+0

@Shubham이 대답했습니다. – halkujabra

답변

4

죄송 사람은! 내 잘못이야. 파일 이름에 파일 확장자를 포함하지 않았습니다. 그것을 포함시킨 후, 그것은 효과가 있었다. 나는 누군가가 미래에 똑같은 실수를 저 지르더라도 이것을 대답하고있다.

+0

upvoted 이것은 내가 파일 이름을 munged했다는 것을 알게 해 주었기 때문입니다. – vlasits

13

나는 PHP 5로 변경 한 후 비슷한 문제가 있고 있었다 (필자는 @ 업로드 방법을 사용 하였다 그것은 사용되지 않습니다, 그래서 CURLFile를 사용하기 시작했다), 그리고 내 문제에 대한 해결책이 stack에서 발견되었다.

솔루션 : 컬 업로드, 상대 경로 작업의 전체 경로를 사용하지 않는 대신

+0

위대한, 내 문제를 해결! 감사! –

1
오늘 아침에이 문제가했지만, 난 그래서 당신이

[email protected]\"file, with comma .txt\" 

해결할

파일 이름 (\ ")에 쉼표가있는 경우 파일 이름에 큰 따옴표를 사용해야합니다.

2

@Guilherme과 같은 상대 경로와 비슷한 문제가있었습니다. 그랬어. 나는 내 bash는 스크립트를 실행 하였다

bash test/script.sh 

하지만, 내 파일은 (내가에서 떠들썩한 파티를 호출 한) bash는 스크립트가 아닌 test 디렉토리와 동일한 디렉토리 수준에, 그래서 스크립트는 찾을 수 없습니다 내 파일. 나를 위해

해결 방법 :/테스트에
1. CD 거기
2. 절대 경로