【发布时间】:2014-03-04 05:47:36
【问题描述】:
我正在尝试创建我的第一个 API 并使用带有 Ajax 的 JQuery 来提交登录表单。问题是在控制台中我得到响应“XMLHttpRequest 无法加载数据。请求的资源上没有 'Access-Control-Allow-Origin' 标头。”
我已经通过 GET 请求连接到我的 API,并且在那里定义了标头 Access-Control-Allow-Origin,但我不知道为什么我的 Ajax 请求失败。
这是谷歌浏览器开发者窗口的截图:
这是请求数据的 JQuery 代码(提交触发器和其他不相关的部分已被删除)
$.ajax({
type: "POST",
url: "http://api.subjectplanner.co.uk",
data:{json:"true",com:"login",username:$('#LoginUsername').val(),password:$('#LoginPassword').val()},
success: function(Response) {
var Data = $.parseJSON(Response);
if(Data.loginerror==0){
$.cookie("SID", Data.sid, {expires:Data.expire, path:'/', domain:'.subjectplanner.co.uk'});
alert("You have been logged in!");
}else{
$('#LoginFormError').html(Data.loginmessage);
$('#LoginFormError').slideDown();
}
}
});
【问题讨论】:
-
你能发布那个 jQuery 代码吗?你在进行跨域调用吗?
-
@lovetostrike 我已将代码添加到我的问题中。我正在从subjectplanner.co.uk 打电话到api.subjectplanner.co.uk
标签: php jquery ajax header cors