2017-04-26 15 views
1

我正在使用「curl -L --post302 -request PUT --data-binary @file」將文件發佈到重定向的地址。此刻重定向不是可選的,因爲它將允許簽名標題和新目標。 GET版本運作良好。在一定的文件大小閾值下的PUT版本也起作用。我需要一種方法讓PUT允許自己重定向,而不必在第一個請求(到redirectorURL)上發送文件,然後在POST重定向到新URL時才發送文件。換句話說,我不想兩次傳輸相同的文件。這可能嗎?根據RFC(https://tools.ietf.org/html/rfc2616#section-8.2),似乎服務器可能會發送一個100「未聲明的等待100(繼續)狀態,僅適用於HTTP/1.1請求,而客戶端沒有要求發送其有效載荷」,所以我問可能會受到服務器的阻撓。有一個捲曲電話的方法嗎?如果不是,兩個捲曲電話?不發送第一個POST的捲髮重定向

回答

1

嘗試curl -L -T file $URL作爲PUT該文件的更「正確」方式。 (常由我重複:-X--request應儘可能避免,它們所造成的痛苦。)

捲曲將使用「預期:100」,其本身在這種情況下,但你也可能會得知服務器廣泛別無論如何不在乎支持,所以它最有可能仍然最終不得不放棄兩次...