Javascript 用“原点”阻止帧;http://localhost:63830" 从访问交叉原点帧开始

Javascript 用“原点”阻止帧;http://localhost:63830" 从访问交叉原点帧开始,javascript,jquery,Javascript,Jquery,从我的应用程序中,我正在弹出窗口中打开一个窗口,稍后我会通过下面的代码定期查看该新打开窗口的当前url,但它给出了下面的错误,阻止了带有原点“”的帧访问跨原点帧。如何解决这个问题 var _url = "https://us.lightspeedapp.com/oauth/authorize.php?response_type=code&client_id=8f2a3974b288e34327ad5564b2f7c0c5f7e28103893479b1e53a957b5

从我的应用程序中,我正在弹出窗口中打开一个窗口,稍后我会通过下面的代码定期查看该新打开窗口的当前url,但它给出了下面的错误,阻止了带有原点“”的帧访问跨原点帧。如何解决这个问题

 var _url =
        "https://us.lightspeedapp.com/oauth/authorize.php?response_type=code&client_id=8f2a3974b288e34327ad5564b2f7c0c5f7e28103893479b1e53a957b5de2e0ff&scope=employee:all";

    var loggedIn = false;
    var win = window.open(_url, "windowname1", 'width=800, height=600');


    var pollTimer = window.setInterval(function () {
        try {
            debugger;
            console.log(win.document.URL);
            if (win.document.URL.indexOf(REDIRECT) != -1) {
                window.clearInterval(pollTimer);
                var url = win.document.URL;
                win.close();


            }
        } catch (e) {
        }
    }, 500);

    e.preventDefault();

}

您会收到此错误消息,因为提供HTML文件的服务器位于与您尝试调用的AJAX url不同的域下

处理这个问题有多种方法

了解更多关于CORS的信息

我不知道您在该服务器上使用的是哪种编程语言us.lightspeedapp.com,但正如您所写,您正在计算机上本地开发一个运行的Web服务器,该服务器为您的HTML文件提供服务

您需要在us.lightspeedapp.com的响应中添加HTTP头文件

在执行实际的POST、GET或其他调用之前,执行跨源AJAX调用的访问者浏览器会执行一个选项HTTP调用

选项调用告诉浏览器服务器是否可以接受该来源的请求

请求->响应可能是这样的(取决于您的需要)

请求标题(访客浏览器)

响应标题(Web服务器)

重要 访问控制允许源站标头也需要协议(http、https)匹配!您还可以在该服务器上拥有源站的白名单,并将请求源站标头与该白名单进行比较,如果找到,则将条目添加到响应标头,或者使用401 Not allowed进行应答

享受发展的乐趣

OPTIONS /oauth/authorize.php
Access-Control-Request-Method: POST
Access-Control-Request-Headers: origin, x-requested-with
Origin: http://localhost:63830
HTTP/1.1 200 OK
Content-Length: 0
Connection: keep-alive
Access-Control-Allow-Origin: http://localhost
Access-Control-Allow-Methods: POST, PUT, GET, OPTIONS, DELETE
Access-Control-Allow-Headers: x-myapikey, x-userid
Access-Control-Max-Age: 86400