2014-03-13 62 views
0

我們看到這個錯誤涉及到一個HTTP文件傳輸請求WCF錯誤:System.ServiceModel.CommunicationException的最大郵件大小配額傳入的消息已超過

WCF error, System.ServiceModel.CommunicationException the maximum message size quota for incoming messages has been exceeded.

我已經看到了與此相關的幾個職位消息,一般的迴應只是把它撞到最大。

如果您想強制限制文件傳輸大小,該怎麼辦?我們希望允許用戶只傳輸60MB(62914560)或更小的文件。

哪個設置應該設置爲62914560? maxStringContentLengthmaxArrayLength

圍繞請求的信封是否有開銷?換句話說,最大允許的下載文件大小是60MB嗎?或者是更小的,文件大小+請求開銷< = 60MB?

如果是後者,是否可以確定。頭頂固定大小?或者開銷是其他設置的功能(例如maxBytesPerRead)?

SSL會影響文件(總體消息)大小嗎?多少?

我試圖理解它是如何工作的。改變大小似乎是任意的。如何知道正確的設置值是否允許下載僅60MB或更少的文件。我看到的一個事情是,一個53776931字節的zip文件將拋出異常。在下載之前,我正在檢查文件的大小,它顯然小於60MB。什麼導致郵件超過最大郵件大小?

回答

0

您需要在客戶端和服務器配置中指定readersQuota。

0

您應該啓用日誌記錄,看看你的消息真的有多大 - 這是我能解決這個問題時,我有一個類似的問題的唯一途徑Logging WCF message sizes

不要試圖以發動maxmessagesize到最高值如果它確實嘗試返回一個很大的消息,它可能會耗盡你的內存應用程序。

相關問題