2014-10-19 142 views
0

我想解決我在我的瀏覽器中得到的錯誤:請求的資源上不存在「Access-Control-Allow-Origin」標頭。原因'空'因此是不允許訪問

XMLHttpRequest無法加載http://api.giphy.com/v1/gifs/search?q=%3Ca%20href=%22。請求的資源上沒有「Access-Control-Allow-Origin」標題。因此不允許原產地'null'訪問。

我看了看互聯網,看到很多關於改變一些在PHP文件或服務器文件等信息的話題......但我的應用程序只是簡單的HTML文件與JavaScript文件,所以我不知道如何使它工作。導致該錯誤的代碼如下:

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請求限制可能這就是原因錯誤

-1

日誌中的URL請求之前到服務器,它似乎是畸形的。

這樣做:

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

然後貼上新的標籤給定的URL。

如果URL是正確的,您將會看到請求的資源。所以問題可以通過這種方式解決:http://enable-cors.org/

相關問題