URL以“get”模式提交,响应“400”错误

时间:2014-01-06 02:47:13

标签: java jquery java-ee web

当我用跟随网址提出请求时:

myip/searchapp/genericSearch/genericSearchInit.html?securityName=&identifierType=3&identifierCode=test&vendor=4&startDate=10%252F1%252F2013&priceType=&currency=&endDate=&exchange=

我收到400错误:

  

无法加载资源:服务器响应状态为400(错误请求)

但是当我提供一些诸如

之类的值时
myip/searchapp/genericSearch/genericSearchInit.html?securityName=&identifierType=3&identifierCode=test&vendor=4&startDate=10%252F1%252F2013&priceType=1&currency=1&endDate=1&exchange=1

它成为合法网址。

任何人都可以告诉我为什么吗?我该如何处理呢?

2 个答案:

答案 0 :(得分:1)

如果您不需要,请尝试完全省略这些最后部分:

myip/searchapp/genericSearch/genericSearchInit.html?securityName=&identifierType=3&identifierCode=test&vendor=4&startDate=10%252F1%252F2013

必须是您调用的任何页面都使用这些变量重定向到不同的页面。当发送空字符串时,似乎页面会中断。

该页面可能正在使用key_exists()检查,如果查询根本没有它,则返回false,如果发送空字符串,则返回true,而不是另外的empty()检查,这将返回false方式。

如果该页面是您的,那么您可以调整它以使其有效发送空数据。如果它不是你的,那么它就是特定页面工作的方式,没有其他任何东西可以理解。

这是一个错误,向负责该页面的人报告。

答案 1 :(得分:0)

我可以在这两个网址中区分的唯一区别是

priceType=&currency=&endDate=&exchange=

priceType=1&currency=1&endDate=1&exchange=1

服务器似乎不喜欢丢失数据,因此发送400 Bad Request。您需要弄清楚您的服务期望并发送它。