2012-03-02 27 views
6

我的Java Servlet通過URLFetchService.fetch(HTTPRequest request)方法利用Facebook Graph API。這幾周來一直工作正常,但今天我測試的查詢的長度比以前的要長很多 - 約爲2300個字符。此查詢導致MalformedURLException : Invalid URL錯誤被拋出。爲什麼服務器端的URL長度有限制?

兩個小時後,我發現根本原因是App Engine有一個hard limit on the length of a URL正在被抓取(即從您的GAE應用程序到網絡上的其他地方)。此外,這個問題只會在生產服務器上顯示出來,所以直到你上線之前你纔會知道它。

這是爲什麼?我的意思是,隨着JSON和REST服務的激增,我可以預見更多的人形成的查詢將比當前的最大長度更長,因爲他們對不同的服務進行各種API調用。

問題(S):這會不會被 '固定'?有一個簡單的解決方案嗎?

安裝環境: 的Java應用程序引擎SDK 1.6.1

回答

1

這聽起來像你需要file this as a feature request或錯誤報告,但是你看到它。無論哪種情況,App Engine團隊中的優秀人員都是唯一可以爲您解決這個問題的人。

+1

感謝馬文。我希望能有一個簡單的解決方案,但它看起來並不像它。無論哪種方式,我已經打開了以下功能要求: http://code.google.com/p/googleappengine/issues/detail?id=7053&thanks=7053&ts=1330713817 – 2012-03-02 19:18:10

+0

任何已知的解決方法了嗎? – Daniel 2014-01-15 19:42:31