我正在使用 AJAX 调用我的云端点类(我不能使用 javascript 客户端 api ,因为这是用于 firefox 插件)。
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 保护。
丹,有什么想法吗?