2012-03-02 28 views
6

Java Servlet, Facebook Graph API'sini URLFetchService.fetch(HTTPRequest request) yöntemiyle kullanıyor. Bu haftalar boyunca iyi çalışıyordu ama bugün test ettiğim sorgulama uzunluğu, öncekilere göre daha uzundu - yaklaşık 2300 karakter uzunluğundaydı. Bu sorgu, atılan MalformedURLException : Invalid URL hatayla sonuçlandı.Neden bir URL'nin uzunluğu üzerinde sunucu tarafı sınırı var?

İki saat sonra, temel neden, App Engine'in getirilen bir hard limit on the length of a URL (yani GAE uygulamanızdan web'deki başka bir yere) olduğu gerçeğinin olduğunu öğrendim. Dahası, bu sorun sadece üretim sunucusunda kendini gösterir, böylece siz yaşamaktan önce farkında olmazsınız.

Neden böyle? JSON ve REST hizmetlerinin çoğalmasıyla, farklı hizmetlere çeşitli API çağrıları yaptıkları için mevcut maksimum uzunluktan daha uzun olacak sorguları oluşturan daha fazla insan öngörebilirim.

Soru (lar): Bu 'sabit' olacak mı? Basit bir çözüm var mı?

Ortamı Ayarı: Eğer file this as a feature request veya hata raporu gerekiyor gibi Java App Engine SDK 1.6.1

cevap

1

Ancak bunu görmek, sesler. Her iki durumda da, App Engine ekibindeki iyi kişiler, bunu sizin için çözebilecek tek kişidir.

+1

Teşekkürler Marvin. Basit bir düzeltme olacağını umuyorum ama böyle görünmüyor. Her iki durumda da şu özellik isteğini açtım: http://code.google.com/p/googleappengine/issues/detail?id=7053&thanks=7053&ts=1330713817 –

+0

Henüz bilinen bir geçici çözüm var mı? – Daniel

İlgili konular