我遇到了大量与请求相关的错误报告,这些请求应该作为 POST 传入,但被请求作为 GET。大多数请求都是专门使用带有 MooTools 库 (1.4.5) 的 JavaScript 发出的。
这些报告也来自各种不同的页面和浏览器(IE 7 - 9 和 Firefox 14 - 16)。一些直接使用 XMLHttpRequest 的 MooTools 请求包装器,而另一些使用 Element.send 方法。
我猜这很可能是某种客户端问题,但我无法准确定位问题,因为我无法在本地重现它。关于这种行为的常见原因有什么建议吗?
一个示例基于一种基本形式:
<div id="myParent">
<form action="/DoSomething/Regular" class="validate" method="post">
<textarea class="grow required" name="MyInfo"></textarea>
</from>
</div>
并且,以下 JavaScript:
var myFormParent = $('myParent');
var myForm = myFormParent.getElement('form');
myForm.set('send', {
url: '/DoSomething/Ajax',
method: 'POST',
noCache: true,
onSuccess: doSuccessFunction
onFailure: doFailureFunction
}).send();
更新
看起来代理服务器支持这些奇怪的请求,特别是WildBlue Optimizer。当站点的所有普通用户都正确执行 POST 请求时,是否有任何事情可以使这些代理服务器不断尝试以 GET 请求的形式访问这些文件。