在使用jQuery进行ajax调用时,如果我使用POST方法它工作正常但是在使用PUT方法而没有其他更改时它不会发送对象数据我的问题是为什么?
//运作良好
function createMovie(){
let m= new movie($("#name").val(),$("#director").val()+1,0);
(function(){$.ajax({
url: "../../server/api/api.php",
type: 'POST',
data:{table:'movies',
adata:m
},
success: function(data) {
console.log(data)
}
})
}())
}
//返回未定义索引:adata和表
相同 function updateMovie(){
let m= new movie($("#name").val(),$("#director").val()+1,$("#id").val());
(function(){$.ajax({
url: "../../server/api/api.php",
type: 'PUT',
data:{table:'movies',
adata:m
},
success: function(data) {
console.log(data)
}
})
}())
}
这是php
$meth= strtoupper($_SERVER['REQUEST_METHOD']);
$adata = $_REQUEST['adata'];
$table = $_REQUEST['table'];
答案 0 :(得分:0)
我发现$ _REQUEST不能用于PUT,你必须自己创建一个put数组我在下面的链接中找到答案。