当前位置: 首页 > 面试题库 >

为什么服务器端对URL的长度有限制?

欧阳正卿
2023-03-14
问题内容

我的Java Servlet通过该URLFetchService.fetch(HTTPRequest request)方法利用了Facebook
Graph API 。这已经工作了好几个星期了,但是今天我正在测试的查询的长度比以前的查询要长得多-
大约2300个字符。此查询导致MalformedURLException : Invalid URL引发错误。

两个小时后,我发现根本原因是App Engine 对要获取的URL的长度(即从您的GAE应用程序到网络上的其他地方)有严格的限制。此外,此问题仅在生产服务器上显现出来,因此在上线之前您不会意识到。

为什么会这样呢?我的意思是,随着JSON和REST服务的激增,我可以预见会有更多的人形成查询,这些查询将比当前的最大长度更长,因为他们对不同的服务进行各种API调用。

问题 :是否可以“解决”?有没有简单的解决方案?

环境设置: Java App Engine SDK 1.6.1


问题答案:

听起来您需要将其作为功能请求或错误报告提交,但是您看到了。无论哪种情况,只有App
Engine团队的优秀人才都能为您解决。



 类似资料:
  • 问题内容: 例如,如果我输入URL: http://www.foo.com/page.php?parameter=kickme#MOREURL 然后在服务器上没有任何部分:#MOREURL 是否可以在没有jQuery AJAX的情况下将这些部分发送或获取到服务器? 问题答案: 不,它仅对浏览器可用 ,因此您必须使用Javascript处理它。服务器无法读取它。 说明: 基本上,页面URL的散列部分

  • 问题内容: 有没有办法限制边框的长度。我有一个具有底部边框的,但是我想在的左侧添加一个边框,该边框仅向上延伸一半。 有没有办法在页面上不添加额外元素的方法? 问题答案: 希望这可以帮助:

  • 从MySQL 5.0.2开始,通过mysql_stmt_attr_set() C API函数实现了服务器端光标。服务器端光标允许在服务器端生成结果集,但不会将其传输到客户端,除非客户端请求这些行。例如,如果客户端执行了查询,但仅对第1行感兴趣,那么不会传输剩余的行。 光标是只读的,不能使用光标来更新行。 未实施UPDATE WHERE CURRENT OF和DELETE WHERE CURRENT

  • 问题内容: 我需要比较两个byte []数组的元素,但只能比较固定长度。对于整个数组,我使用。当然,我可以复制子范围(),但我不想这样做。我也肯定应该有标准的方法来执行此操作,而无需执行新的实用程序方法。 我正式需要的是这样的: 有什么众所周知的东西吗?我看不到广泛使用的方法。 关于防止错误答案的要求:-数组等于长度限制。-我有手动执行功能,但我想将其替换为标准功能。-我不要任何副本。 先感谢您。

  • 问题内容: 我正在尝试使用XML PATH连接查询中某些字符串数据的结果 请参阅下面的查询,发生的情况是XML串联列语句被截断了,似乎最大长度有限制,我该如何克服。 问题答案: 假设您在SSMS中看到了截断,请在SSMS的选项中更改最大字符设置: 工具>选项>查询结果> SQL Server>结果到文本>每列中显示的最大字符数 工具>选项>查询结果> SQL Server>网格结果>检索到的最大字

  • 问题内容: 这个问题出现在Spring类中,该类具有相当长的类名称。类名长度的语言是否有限制? 问题答案: 在Java语言规范指出标识符的长度不受限制。 但是实际上,文件系统将限制生成的文件名的长度。