以下代码会触发GET而不是POST HTTP请求。JQuery Ajax发送的是GET而不是POST
function AddToDatabase() {
this.url = './api/add';
}
AddToDatabase.prototype.postData = function(dataToPost) {
$.ajax({
type: "POST",
url: this.url,
data: dataToPost,
context: this,
success: this.onSuccess
});
};
var AddToDatabase = new AddToDatabase();
data = {data: 'coucou'};
AddToDatabase.postData(data);
为什么,我该如何获得POST?
我在Google Chrome Inspect和Firefox中看到检查浏览器是否发送GET。下面是从浏览器:
请求URL:http://本地主机/采样码/ UPDATE%20MYSQL/API /添加/ 请求方法:GET状态代码:200 OK
求解
称为'./api/add'的URL实际上是发布到'./api/add/index.php'。原来,调用'./api/add /index.php
'或'./api/add /
'给了我一个POST请求。
这只是一个错误的网址,但由于某种原因,我正在成功获取'.api/add /'GET请求。
为什么你认为这将是一个GET请求? –
您是否试图在firebug上打开网络面板的情况下在Firefox上运行ajax调用? – fcalderan
[测试](http://jsfiddle.net/4gh7M/) - 如果您将运行此项并检查网络面板,您会发现它发送了一个POST请求 –