Access-Control-Allow-Origin'标题不允许我在登录后切换页面

时间:2014-04-01 08:55:26

标签: javascript jquery ajax

我可以使用平板电脑或手机(作为应用程序)登录,但在使用PC时无法登录。错误返回为:

XMLHttpRequest无法加载http://softwarehuttest.x10.mx/public/account/login/?id=&password=&。 No' Access-Control-Allow-Origin'标头出现在请求的资源上。起源' null'因此不允许访问。

我尝试使用以下标题更正错误:

标题集Access-Control-Allow-Origin" http://softwarehuttest.x10.mx/public/account/login/"

我现在可以通过一个问题登录我的电脑。它曾用于登录并立即切换到我的主页。当我添加标题时,它会登录但不再切换到我的主页。

请告知遗漏的内容。谢谢。

Header set Access-Control-Allow-Origin "http://softwarehuttest.x10.mx/public/account/login/"    
//LOGGING IN AND GOING TO HOME PAGE ON SUCCESS
$(document).on("pageinit", "#loginForm", function () {
    $("#form1").on("submit", function (event) {
        event.preventDefault();
        $.ajax({
            type: "GET",
            url: "http://softwarehuttest.x10.mx/public/account/login/",
            data: $("#form1").serialize(),
            success: function (data) {
                console.log(data);
                if (data.loggedIn) {
                    $.mobile.changePage("#home");
                } else {
                    alert("You entered the wrong username or password. Please try again.");
                }
            }
        });
    });
});

1 个答案:

答案 0 :(得分:0)

这是一个跨域问题。所以你有两个选择,要么你的服务支持JSONP,要么你必须创建自己的代理。关于最后一个选项,您可以向您自己的脚本(Java,PHP等)发出Ajax请求,该脚本将调用您的原始请求(http://softwarehuttest.x10.mx/public/account/login/)。然后你必须处理答案并转发回来。