CORS:对预检请求的响应未通过访问控制检查:否'Access-Control-Allow-Origin'

时间:2017-07-10 16:19:42

标签: javascript php ajax cors access-control

我正在尝试使用帖子表格登录moodle从外部网页到moodle,我使用下一个ajax发送输入:

var frm = $('#loginForm');

frm.submit(function(e) {
    e.preventDefault();
    $.ajax({
        type: frm.attr('method'),
        url: frm.attr('action'),
        data: frm.serialize(),
        xhrFields:{
            withCredentials:true
        },
        async:true,
        beforeSend: function (xhr){
            xhr.setRequestHeader('Access-Control-Allow-Origin', '*');
        },
        success: function (data) {
            console.log("Logged");
        },
        error: function (data) {
            console.log("NOT Logged");
        },
    });
});

现在进入moodle的login / index.php我插入标题以使CORS连接成为可能:

header("Access-Control-Allow-Credentials: true");
header("Access-Control-Allow-Origin: http://fabianmurillo.000webhostapp.com");
header("Origin" : "http://fabianmurillo.000webhostapp.com");

当我运行代码时,浏览器会返回错误:

..preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin'.. 

enter image description here

Dunno为什么浏览器会阻止登录moodle的连接。

感谢您的帮助。

0 个答案:

没有答案