请求的资源上不存在“Access-Control-Allow-Origin”标头。因此,Origin'null'不允许访问[重复]

Posted

技术标签:

【中文标题】请求的资源上不存在“Access-Control-Allow-Origin”标头。因此,Origin\'null\'不允许访问[重复]【英文标题】:No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'null' is therefore not allowed access [duplicate]请求的资源上不存在“Access-Control-Allow-Origin”标头。因此,Origin'null'不允许访问[重复] 【发布时间】:2014-12-14 09:45:25 【问题描述】:

我正在尝试解决我在浏览器中遇到的错误:

XMLHttpRequest 无法加载 http://api.giphy.com/v1/gifs/search?q=%3Ca%20href=%22。请求的资源上不存在“Access-Control-Allow-Origin”标头。因此不允许访问 Origin 'null'。

我在互联网上查看过很多关于更改 php 文件或服务器文件等中的某些信息的主题......但我的应用程序只是带有 javascript 文件的简单 html 文件,所以我不知道如何使它工作。导致错误的代码如下:

var getGifs = function(word)     
  var xhr = $.get('http://api.giphy.com/v1/gifs/search?q=' + word + '&api_key=dc6zaTOxFJmzC&limit=16');
    xhr.done(function(data)  

    var linksArray = new Array(16);
    for(var i = 0; i<16; i++)
        var a= data.data[i].images.fixed_height.url;
        linksArray[i] = a;          
    
     for (var i=0; i<16; i++)                 

         $('#gifs .row').append('<div class="col-sm-3"><div class="img-wrapper"><img class="col-sm-12 gif-img" src="' + 
                                linksArray[i]+  '"/>' +
                               '<div class="source-button btn btn-primary btn-sm">Use</div></div></div>');               
        
);

所以我第一次调用该方法时没问题,但如果我再次尝试调用它,我会收到该错误。任何帮助表示赞赏..

【问题讨论】:

【参考方案1】:

跨域ajax请求被限制可能是这个错误原因

【讨论】:

【参考方案2】:

在向服务器请求之前记录 url,它似乎格式不正确。

这样做:

console.log('http://api.giphy.com/v1/gifs/search?q=' + word + '&api_key=dc6zaTOxFJmzC&limit=16')

然后将给定的网址粘贴到新标签中。

如果 url 正确,您将看到请求的资源。所以问题可以这样解决:http://enable-cors.org/

【讨论】:

以上是关于请求的资源上不存在“Access-Control-Allow-Origin”标头。因此,Origin'null'不允许访问[重复]的主要内容,如果未能解决你的问题,请参考以下文章

django中的“请求的资源上不存在'Access-Control-Allow-Origin'标头”

如何解决请求的资源上不存在“Access-Control-Allow-Origin”标头

Http.post 请求的资源上不存在“Access-Control-Allow-Origin”标头

请求的资源发布请求上不存在“Access-Control-Allow-Origin”标头

Angular 2请求的资源上不存在“Access-Control-Allow-Origin”标头[重复]

API 请求错误 - 请求的资源上不存在“Access-Control-Allow-Origin”标头