我已经安装了 Luracast 的 Restler API 框架,并且在这一切上都取得了惊人的成功,除了跨域发送 PUT 或 DELETE 时。以下在同一台服务器上工作正常,但是当我跨域时,Firebug 将 PUT 或 GET 显示为 OPTIONS,并且在服务器上找不到它。我很困惑如何停止发送“选项”而不是 PUT 或 DELETE。
$.ajax({
url: url,
type: 'PUT',
data: "thename="+ $('#TheName').val(),
success: function(xhr, status) {
console.info(xhr);
},
error: function(xhr, status) {
console.info(xhr.responseText);
},
complete: function(xhr, status) {
$('#showResponse').val(xhr.responseText);
}
});
对于某个地方的另一个线程,我已将以下内容添加到 Restler 输出中:
header('Access-Control-Allow-Origin: *');
header('Access-Control-Allow-Methods: GET, POST, DELETE, PUT, OPTIONS');