以下是我们OpenID provider的表格:
<form method="post" action="/affiliate/form/login/submit?affID=7" autocomplete="off"> <table > <tr> <td > <input type="text" name="email" ID="email" value="" maxlength="100" /> <span >name@example.com</span> </td> <td > <input type="password" name="password" ID="password" /> <span >Password</span> </td> <td></td> <td > <input type="submit" value="Sign In" /> </td> </tr> </table> <input type="hIDden" ID="fkey" name="fkey" value="REDACTED" /> </form>
此表单是托管在iframe中的页面(at / affiliate / form / login)的一部分。 iframe通过httpS(通过http的主机页面)提供。您可以在/users/login
使用隐身/私人浏览/色情模式浏览器窗口查看此 *** 作。
所以这里的问题,定期(但不是一贯)一个用户将GET而不是POST到这个url。这是一个荒谬的低发生,影响到目前为止总共不到50个用户。
我很想把这些错误(没有动作方法等)开/关,但是…
这些看起来像真正的用户:广泛的IP,各种有效的用户代理和可信的时间。令人沮丧的是,相同的用户有时会在一段时间后成功地POST相同的表单。
有什么想法可能导致这个?
我已经和丢弃的想法
> httpS加速或负载平衡器发送请求
检查传入的日志,它们与应用程序的内容相匹配
> ASP / .NET请求解析错误
>将传入与记录的请求值进行比较,它们匹配
> BUGgy浏览器
>在多个Chrome版本,firefox 4,Safari和Mobile Safari中记录的事件
机器人或浏览器扩展程序
>宽浏览器,IP和 *** 作系统扩展。
我目前最好的猜测是,在行动中的?ID = =绊倒某事(虽然不一致,再次)。这基本上是voodoo调试,所以我更喜欢一个更权威的解释。
更新:尝试我的voodoo修复(< input type =“hIDden”name =“affID”value =“#”/>等等),并部署。没有一个责备,所以我只是让它烘烤。
我们每天平均看到几天,所以如果这个2没有问题,我会把它作为答案。
第二次更新:不,还在发生。然而,更少的频率。我正在收集更多的数据,看看浏览器或 *** 作系统是否有任何共同点。
*** 作理论为什么从动作中去除?affID =#已经减少了事件,客户端面前的错误代理乐观地提取“看起来安全的GET”。这是一个狂野的猜测,所以用一粒盐来处理它。
第三次更新:更多的伪造代理证据。查询受影响的IP的日志(在更长的时间内),并且其中许多具有比大多数未受影响的请求速率高得多的请求速率。它不是100%削减和干燥,我确信有些令人沮丧的清爽是增加了一个tad但是…它仍然是一个合理的指标(差异是5倍左右的同时期的受影响的IP的请求数)。
在这一点上,我正在检测到发生错误,并提供更好的错误消息和指导。对于真正获得权威的答案,尤其是那个答案似乎可能在“我无法控制的代码”的范围内,这一点毫不迟疑。
解决方法 一些广告拦截浏览器扩展,如 AdBlock Plus Popup addon‘探测器’伴随页面,以确定他们的真实URL,然后再决定是否阻止它们。具体来说,上述Popup插件默认情况下使用head查询执行此 *** 作,但可以设置为执行GET查询。 总结以上是内存溢出为你收集整理的html – 表单随机提交为GET而不是POST全部内容,希望文章能够帮你解决html – 表单随机提交为GET而不是POST所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)