如何在蜂窝网络上处理损坏的HTTP POST

如何在蜂窝网络上处理损坏的HTTP POST,http,cellular-network,Http,Cellular Network,我有一个主要由移动客户端使用的网站。有许多表单帖子和ajax帖子请求来自该站点,95%的时间它们工作正常,但其余的请求由于缺少预期的帖子正文参数而失败。我可以看到人们反复尝试在日志中提交一些数据,但没有成功,因为(我在这里使用的是SpringMVC)框架抛出了MissingServletRequestParameterException 对于相同的参数名称也总是如此。我还没能在任何网络上的任何设备上重现这个问题(在加拿大这里),但它显然正在世界各地的其他网络上发生 还有其他人遇到过这个问题吗?我

我有一个主要由移动客户端使用的网站。有许多表单帖子和ajax帖子请求来自该站点,95%的时间它们工作正常,但其余的请求由于缺少预期的帖子正文参数而失败。我可以看到人们反复尝试在日志中提交一些数据,但没有成功,因为(我在这里使用的是SpringMVC)框架抛出了MissingServletRequestParameterException

对于相同的参数名称也总是如此。我还没能在任何网络上的任何设备上重现这个问题(在加拿大这里),但它显然正在世界各地的其他网络上发生

还有其他人遇到过这个问题吗?我觉得我可能是唯一的一个,因为无论我在谷歌上搜索什么,我都找不到任何类似的东西

post数据并不复杂-最多可能有3个值;没有奇怪的命名约定

例如

更新:

仅仅看了更多的日志条目,我不认为这些失败的请求会有任何post数据,因为我不仅没有看到Spring MVC抛出的异常中的参数名,而且没有看到任何其他参数名(我正在错误地记录整个请求,但不幸的是,当原始HTTP请求发送到servlet{DispatchServlet在本例中}时,它已被处理,原始请求主体InputStream已被使用)

我将很快编写一个ServletFilter,尝试获取原始请求主体,并将其记录下来

如果这是一个运营商特有的问题,我不知道我要做什么来解决它-似乎我能做的不多

感谢曾经经历过这种情况的人的帮助


谢谢

,因为我自己无法复制,也无法在服务器上执行网络数据包跟踪,不。至少,用我目前的专业知识是不行的。是否可以在生产服务器上以安全的方式执行此操作?可能不可以。您能让测试服务器运行相同的环境吗?我们只有在用户通过网络进入时才会遇到这些问题我实现了ServletFilter以允许我们记录失败的请求,作为其实现的一部分,我使用了HttpServletRequestWrapper子类,该子类必须提供诸如getParameters()之类的功能-我实现了这个功能,并对POST数据执行了一些简单的清理,例如修剪POST var键,然后突然所有错误都消失了(几乎所有错误都消失了)。我们自己解析POST数据的行为起到了帮助作用。这可能是运营商的代理的错误,很可能你对此无能为力。
POST /handleruri HTTP/1.1
Host: somehost.com

id=H4543&date=20-08-2012