Java中App Engine的createLogoutURL(url)函数的url参数的最大长度是多少?
我们得到了这个例外:
java.lang.IllegalArgumentException: URL too long
at com.google.appengine.api.users.UserServiceImpl.makeSyncCall(UserServiceImpl.java:126)
at com.google.appengine.api.users.UserServiceImpl.createLogoutURL(UserServiceImpl.java:77)
at com.google.appengine.api.users.UserServiceImpl.createLogoutURL(UserServiceImpl.java:67)
没有关于限制的文档,我们无法在REDIRECT_URL_TOO_LONG
https://code.google.com/p/googleappengine/source/browse/trunk/java/src/main/com/google/apphosting/api/ApiProxy.java#58中找到引发ApiProxy
错误的代码
由UserServiceImpl
调用
https://code.google.com/p/googleappengine/source/browse/trunk/java/src/main/com/google/appengine/api/users/UserServiceImpl.java?r=173#114
答案 0 :(得分:1)
我不确定实际尺寸有多大可以获得您的特定错误,但看起来Google App Engine支持的最大尺寸(并且很可能是所有Google服务)的路径部分为2044个字符(或在那个数字附近)。我发现它使用二分搜索,因为最近我看到这条消息导致我的查询太大了。
正在正常处理以下网址并返回应用的404
,但如果您再添加一个字符,则会看到Google的414
错误:
因此,重定向的网址不应超过2000个字符,因为无论如何都不会处理它。