2017-04-20 59 views
0

我試圖從instagram獲取照片獲取請求, 我試過jQuery.get()這適用於其他目的獲取請求,這不是instagram, 但這個它不工作。 我用郵遞員,我得到的請求沒有問題, 我也試圖從jQuery.get()更改爲jQuery.getJSON(),仍然沒有運氣。獲取請求無法以某種方式

順便說一下,試圖用NodeJS使用request模塊獲得請求,它工作正常。

希望能對你有所幫助,這裏是我的簡單的代碼:

<!DOCTYPE html> 
 
<html lang="en"> 
 
<head> 
 
    <meta charset="UTF-8"> 
 
    <title>Title</title> 
 

 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.0/jquery.min.js"></script> 
 
    <script> 
 

 
     $(function() { 
 

 
      $.get("https://www.instagram.com/uefachampionsleague/media/", 
 
       function (data) { 
 
        alert(items[0].id); 
 
       },"json"); 
 
     }); 
 

 
    </script> 
 
</head> 
 
<body> 
 

 
<p></p> 
 

 
</body> 
 
</html>

+1

檢查開發人員工具控制檯是否存在有關[CORS](https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS)錯誤的問題,因爲'instagram'不允許您在瀏覽器 –

+0

你必須註冊你的應用程序使用instagram數據,然後與你的後端和有效的令牌可以訪問數據:\ –

+0

嘗試設置dataType到jsonp – chris

回答

1

您需要註冊您的應用程序,然後設置憑據在AJAX請求,或者您也可以使用crossorigenme代理:

$(function() { 
 
    $.get('https://crossorigin.me/https://www.instagram.com/uefachampionsleague/media/', function(data) { console.log(data); }); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.0/jquery.min.js"></script>

由於Jaromanda補充說:「值得一提的crossorigin.me的警告 - 請不要使用代理服務器在生產現場 - 如果你想‘繞過’CORS,使用自己的該死服務器做」。

+1

值得注意關於'crossorigin.me'的警告 - **請注意不在生產現場使用代理** - 如果你想「繞過」CORS,**使用你自己的該死的服務器來做它** –

+0

只要提及,他沒有提及任何有關生產應用的信息,反正我會刪除答案。 –

+0

不是。是個很好的答案。剛剛添加的警告 –