2010-11-09 74 views
4

注意:我們在客戶端使用lib_neon,在服務器端使用Tomcat和servlet api。如何在發送請求體之前檢查PUT是否可以執行?

問題是:當客戶端想要放入一些內容時,它執行帶有「Expect:100-continue」頭部的PUT請求,Tomcat通過簡單地返回狀態100繼續處理它,繼而在客戶端開始發送剩下的部分請求,它被我們的自定義過濾器處理,並且通常不會通過(例如,用戶未被授權,或者嘗試放置太大的文件,超過用戶限制或其他內容)。過濾器立即發送錯誤響應,但客戶端僅在提交完整請求主體時讀取響應。

似乎不可能手動發送某些東西而不是100繼續狀態,當某些檢查失敗時,這種行爲被硬編碼到tomcat中,有沒有其他方式不上傳請求主體,何時不可能?

+0

通過遷移到碼頭解決 – 2010-12-07 10:21:12

回答

6

你需要一個更理智的100-繼續處理(我相信碼頭合格)的servlet容器。

我不能相信這個澄清仍然不是servlet規範的一部分;我相信我問了7年前的事情。

+0

是的,碼頭幫助,甚至沒有改變代碼。謝謝。 – 2010-11-10 08:51:39

相關問題