2014-10-10 44 views
1

我正在努力使CI與Xcode服務器一起工作,以便我們可以在內部自動推送更新。除了IPA僅部分上傳這一事實外,一切都在Dropbox的最終工作。Dropbox部分上傳

這不是一個大文件 - 約5.5mb。如果我沒有指定「內容長度」,我會得到200,但它不是完整的文件(大約2.7mb)。

當我指定「Content-Length」時,它超時,我得到:curl: (52) Empty reply from the server

這裏是我的shell腳本的一部分:

DROPBOX_TOKEN="DROPBOX_TOKEN" 
FILE_LOCATION="folder/App.ipa" 

IPA="/path/to/IPA/App.ipa" 
IPA_SIZE=`ls -l $IPA | awk '{print $5}'` 

curl -i -X PUT "https://api-content.dropbox.com/1/files_put/auto/$FILE_LOCATION" \ 
-d @"$IPA" \ 
-H "Authorization: Bearer $DROPBOX_TOKEN" \ 
-H "Content-Type: application/octet-stream" \ 
-H "Content-Length: $IPA_SIZE" 

我已經證實,$ IPA_SIZE(5473951個字節)等於我在取景器看到的。

+1

而不是'-d',你嘗試過'--data-binary'嗎? – smarx 2014-10-10 01:02:54

+0

@smarx是的,它做到了。 – iosfreak 2014-10-10 16:32:41

回答

1

(只是提出我的意見轉化爲誰碰到過這樣的人以後的答案。)

您需要使用--data-binary而不是-d確保curl沒有做任何修改文件內容。