我正在使用AJAX调用我的云端点类(我不能使用javascript客户端api because this is for a firefox add-on)。
var restURL =
//"https://xxx.appspot.com/_ah/api/yyy/v1/article";
"http://localhost:8888/_ah/api/yyy/v1/article";
$.ajax({
url: restURL,
headers: {"Authorization": "Bearer "+ oauthParams.access_token}
type: "POST",
data: JSON.stringify(object),
contentType: "application/json",
success: function(data, textStatus, jqXHR) {
console.log(TAG+className+" successfully saved to server.\ntextStatus: "+textStatus);
},
error: function(jqXHR, textStatus, error) {
console.error(TAG+"Failed to save "+className+" to server.\ntextStatus: "+textStatus+"\nerror: "+error);
}
});
因为这些是跨源请求,所以AJAX在发布之前发送“飞行前”OPTIONS请求。这种飞行前测试在部署时状态良好(状态代码200),但在本地开发服务器上进行测试时失败(404 Not Found)。从API Explorer进行测试时,显然没有飞行前请求(它是相同的来源)并且它有效 此方法受OAuth保护。
丹,有什么想法吗?