【问题标题】:App Engine createLogoutURL(url) max url length?App Engine createLogoutURL(url) 最大 url 长度?
【发布时间】:2014-01-20 21:52:16
【问题描述】:

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)

没有关于限制的文档,我们在ApiProxy 中找不到引发REDIRECT_URL_TOO_LONG 错误的代码https://code.google.com/p/googleappengine/source/browse/trunk/java/src/main/com/google/apphosting/api/ApiProxy.java#58UserServiceImpl 调用 https://code.google.com/p/googleappengine/source/browse/trunk/java/src/main/com/google/appengine/api/users/UserServiceImpl.java?r=173#114

【问题讨论】:

标签: java google-app-engine


【解决方案1】:

我不确定实际大小有多大会导致您的特定错误,但看起来 Google App Engine 支持(很可能是所有 Google 服务)的最大大小是路径部分的 2044 个字符(或大约该数字)。我使用二分搜索找到了它,因为最近我看到了这条消息,因为我的查询太大了。

以下 URL 正在正常处理,它返回应用程序的 404,但如果再添加一个字符,您将看到 Google 的 414 错误:

因此,您的重定向 URL 不应超过 2000 个字符,因为它不会被处理。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-07-17
    • 2012-01-23
    • 1970-01-01
    • 2010-11-14
    • 1970-01-01
    • 2013-11-02
    • 2010-11-20
    • 1970-01-01
    相关资源
    最近更新 更多