1
這是我在process.php(CURL,PHP)使用PUT請求上傳文件,如何處理?
parse_str(file_get_contents("php://input"),$upload_data);
if (isset($upload_data)) {
print_r($upload_data);
exit;
}
這是使用curl我如何查詢服務器。
[email protected]:~$ curl -X PUT -H "X-TOKEN: test123" -F [email protected]/home/weldan/Pictures/Cool-Pictures1.jpg http://host.tld/process.php
Array
(
[------------------------------22031b6e799c
Content-Disposition:_form-data;_name] => "filedata"; filename="Cool-Pictures1.jpg"
Content-Type: image/jpeg
���
)
這樣,我知道那裏有上傳的文件。
目前的問題是,我如何處理這個文件像$ _FILES變量?
打開其他方式來實現這一點。
謝謝
所以這就是它的樣子: '------------------------------ 7bb0791da128 Content-Disposition:form-data; NAME = 「FILEDATA」; filename =「test.txt」 Content-Type:text/plain test 123 ----------------------------- -7bb0791da128 - '也許這就是爲什麼上傳的圖像文件無法查看。它有額外的字符串。 – 2013-02-27 09:36:32
是:)我在測試過程中意識到這一點:)但重要的是第一句話。它更多的是關於HTTP協議的性質而不是PHP的問題。使用PUT請求可以只有一個文件,因此不需要$ _FILES數組。 **進一步注意圍繞-F參數的雙引號。沒有他們它不會工作** – hek2mgl 2013-02-27 09:37:43
是的。做了建議。我認爲我們在服務器端獲得的還是原始的二進制數據。如果我將它存儲爲filename.txt我仍然看到額外的字符串,我想要做的是..我想將數據存儲在臨時文件中,所以我可以檢查它的類型,在我的情況下我想要圖像文件。所以你的回答實際上很有幫助,但並沒有解決問題。還在搞清楚該怎麼做。謝謝 – 2013-02-27 10:14:27