2012-03-02 13 views
6

Il mio Java Servlet utilizza l'API del grafico di Facebook tramite il metodo URLFetchService.fetch(HTTPRequest request). Questo ha funzionato bene per settimane, ma oggi la lunghezza della query che stavo testando era molto più lunga di quella precedente - circa 2300 caratteri di lunghezza. Questa query ha provocato l'emissione di un errore MalformedURLException : Invalid URL.Perché esiste un limite lato server sulla lunghezza di un URL?

Due ore più tardi, ho scoperto che la causa principale era il fatto che App Engine ha uno hard limit on the length of a URL che viene recuperato (ad esempio dall'app GAE a un'altra parte sul Web). Inoltre, questo problema si manifesta solo sul server di produzione in modo da non essere a conoscenza di esso fino a quando non sei andato in diretta.

Perché è così? Voglio dire, con la proliferazione dei servizi JSON e REST, posso prevedere che molte più persone formeranno query che saranno più lunghe della lunghezza massima corrente in quanto effettuano varie chiamate API a diversi servizi.

Domanda (e): Verrà risolto? C'è una soluzione semplice?

Configurazione dell'ambiente: SDK Java App Engine 1.6.1

risposta

1

Suona come è necessario file this as a feature request o bug report, tuttavia si vede. In entrambi i casi, i bravi ragazzi del team App Engine sono gli unici a poter risolvere il problema.

+1

Grazie Marvin. Speravo ci sarebbe stata una soluzione semplice ma non sembra. Ad ogni modo, ho aperto la seguente richiesta di funzionalità: http://code.google.com/p/googleappengine/issues/detail?id=7053&thanks=7053&ts=1330713817 –

+0

Eventuali soluzioni alternative ancora? – Daniel

Problemi correlati