我使用play 2.1.0並希望實現帶有幾個參數的文件上傳,即multipart/form-data
表單有一些小字段和文件本身。當isMaxSizeExceeded時訪問請求主體
如果我上傳的文件,而無需使用註釋
@BodyParser.Of(value = BodyParser.MultipartFormData.class, maxLength = MAX_FILE_SIZE_B)
,並檢查文件的大小像uploadedFile.length > MAX_SIZE
我可以訪問請求主體和它的所有不爲空的時間。
如果我使用註釋,當maxSizeExceeded ctx.request().body().asMultipartFormData()
爲null時,即使我的小參數在瀏覽器發送的請求中首先出現。這是正確的行爲,是任何方式來獲取小參數,即使文件太大?
確實,第一種方法很糟糕,因爲大型文件實際上會上傳到服務器上?
行爲是預期的,因爲一旦有效載荷大小超過max_size限制,有效載荷就會被丟棄。所以,你不能訪問任何表單域。請嘗試將這些字段添加爲請求標頭的一部分,如果有幫助的話。對不起,遲到的迴應,遲到比從未更好:)。 – Sundar 2013-04-23 09:28:08
@Sundar你可以請創建一個答案,我會接受它。還鏈接到源將非常感激。 – 2013-04-23 15:29:45