3

我配置了web.config以允許50 MB <httpRuntime maxRequestLength="51200" /> 但是當我嘗試將40MB的連接添加到共享點列表時,它失敗。 但它工作,如果我將maxRequestLength增加到52 MB <httpRuntime maxRequestLength="53248" />
發生了什麼? Web服務調用是否會增大請求的大小?有沒有一種方法可以解決這個問題,所以如果我將maxRequestLength配置爲50 MB,它允許50 MB?sharepoint web service即使文件在最大文件大小範圍內,也會超出最大請求長度

回答

5

通過WSS 3.0 Web Services上傳的文件實際上被放入XML消息本身。爲了發生這種情況,它變成了Base64 encoded。由於process的性質,這會使文件大小增加33%。您必須確保允許比您提到的web.config設置中的最大文件多33%。

+0

謝謝大家。這個論壇是最好的。我搜索了這個,你是如此的正確。 「Base 64編碼確實將數據的大小增加了三分之一」http://msdn.microsoft.com/en-us/library/ms996462.aspx – danae 2009-06-12 15:41:56

1

在進行Web服務調用時運行Fiddler,然後您可以看到呼叫的內容以及它的大小。這應該有助於確定具體的web服務調用的開銷。

+0

有趣。我跑提琴手,並顯示以下內容: 請求計數:\t 1個 發送字節:收到\t 53524275個 字節:0 因此,這意味着它實際上是發送超過50MB,但它是交流中心,因爲同一個文件可以從Sharepoint網站添加沒有問題。現在我只是想知道,如果這些超過10MB是由web服務調用添加的,我怎麼能解決這個問題? – danae 2009-06-12 03:07:51

2

web服務可能會使用Base64編碼的文件,這勢必會比實際的二進制文件較大(和SharePoint UI只是使用普通的FileUpload)

相關問題