当前位置: 首页 > 知识库问答 >
问题:

CORS不再工作

姜锋
2023-03-14

我有一个奇怪的问题,每天我的AJAX请求一个网站不再工作。

我现在正在努力使它工作,但找不到问题。

这是我的JavaScript:基本上它非常简单,它检索ip adres并将其发送到存储它的站点。


    var xhr = new XMLHttpRequest();
    xhr.open('GET', 'https://dashboard.inofec.nl/ip', true);

    // If specified, responseType must be empty string or "text"
    xhr.responseType = 'text';

        xhr.onload = function () {
            if (xhr.readyState === xhr.DONE) {
                if (xhr.status === 200) {
                    // console.log('R = ' + xhr.response);
                    // console.log('RT= ' + xhr.responseText);
                    tip = xhr.responseText;

                    var formData = new FormData();
                    formData.append('ip', tip);
                    formData.append('uri', turl);
                    formData.append('id', dataId);

                    var request = new XMLHttpRequest();
                    request.open("POST", "https://dashboard.inofec.nl/visits");
                    request.send(formData);

                    // console.log('IP  = ' + tip);
                    // console.log('URL = ' + turl);
                    console.log('ID  = ' + dataId);
                }
                else {
                    console.log('ERROR !');
                }
            }
        }
    xhr.send(null);

在服务器上,我现在添加了这一项,以避免使用通配符


    if (isset($_SERVER['HTTP_ORIGIN']) && $_SERVER['HTTP_ORIGIN'] != '') {
        header('Access-Control-Allow-Origin: ' . $_SERVER['HTTP_ORIGIN']);
        header('Access-Control-Allow-Methods: GET, PUT, POST, DELETE, OPTIONS');
        header('Access-Control-Max-Age: 1000');
        header('Access-Control-Allow-Headers: Content-Type, Authorization, X-Requested-With');
    }

当我只使用

头('access-control-allow-origin:');我得到错误:Cross-Origin-request blocked:CORS-header'access-control-allow-origin'不匹配',*')。

我得到了新的标题

CORS-header“Access-Control-Allog-Origin”与“http://www.inofec.nl,*”不匹配)。

但当我检查头时,我看到它以正确的头响应。

access-control-allow-headers
content-type,Authorization,x-requested-with access-control-allow-methods
GET,PUT,POST,DELETE,OPTIONS access-control-allow-origin http://www.inofec.nl,*

共有1个答案

陶琦
2023-03-14

Yvo Cilon让我思考了多重价值。给我指明了正确的方向。

我搜索头并注意到在Web服务器上已经设置了一个头,我在代码中添加了它。

我删除了webserver中的头集,以控制如何和何时使用它。

谢谢分享你的想法。

 类似资料:
  • 我的服务器运行在localhost:8080(spring boot app)上,前端运行在localhost:3000(angular app)上。问题是我想从前端向后端服务器发出请求。我熟悉cors,但对我来说不起作用。我已将此添加到我的服务器: ,但我仍然得到 XMLHttpRequest无法加载http://localhost:8080/cars.请求被重定向到http://localho

  • 我正在尝试从WepApi2控制器获取json响应 使用此项尝试获取数据。。。 我得到了这个... 阻止跨源请求:同一源策略不允许读取位于的远程资源https://api.mysite.com/api/Data/GetData.(原因:CORS标头“Access Control Allow Origin”与“*”不匹配) 我已经在网络上搜索了几乎所有我能找到的关于CORS和jQuery的信息,但我不

  • 我正在与以下人员合作: MySQL:稳定5.6.22(瓶装) MysqlWorkbench 6.2 我有以下顺序 null 它又起作用了,只是玩,我试着再执行一次 确保返回1 原来的错误信息不会再次出现。 null MySQL服务器已停止并重新启动 工作台重新打开 计算机已重新启动 和返回1 不会再次出现原始错误消息。

  • 在过去的三天里,我一直在与错误“跨源请求被阻止:相同的源策略不允许读取http://localhost:8080/demomongo/templateapp/login上的远程资源。”(原因:缺少CORS头'Access-Control-Allow-Origin')。

  • 我有这样的配置 在包中,有一个组件需要中的存储库。 这适用于spring数据MongoDB 1.5.2版 如果我升级到任何高于1.6.0.release的版本(我尝试过1.6.2和1.7.0),这将不再有效。这就好像mongo存储库扫描不工作,我得到了错误: 有什么想法吗? 更新:如果我使用MongoRepository而不是PagingAndSortingRepository,它可以工作: 这不

  • 问题内容: 问: 为什么不能在我的工作了吗? 我选择了一个相当强大的角度应用程序。我一直试图解决的最新问题是“页面刷新时丢失的用户凭据”问题。 当我拿起项目的auth服务时,并没有多大意义,在深入研究后,我发现它是从几页随机代码中组合而成的。它也不能完全正常工作,因此我研究了不同的来源,并决定完全实现其中之一(angular-client-side-auth) 现在,我实现的身份验证服务/控制器与