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
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 –
Eventuali soluzioni alternative ancora? – Daniel