2016-04-15 14 views
0

curlコマンドをinstagram apiからjquery(ajax/get)に変換しようとしています。ドキュメントからCURLをJquery/Javascriptに変換するクリーンな方法[Instagram]

curl -F 'client_id=CLIENT_ID' \ 
 
    -F 'client_secret=CLIENT_SECRET' \ 
 
    -F 'grant_type=authorization_code' \ 
 
    -F 'redirect_uri=AUTHORIZATION_REDIRECT_URI' \ 
 
    -F 'code=CODE' \ 
 
    https://api.instagram.com/oauth/access_token

"この交換を行うためには、あなたは、単にこのコードを投稿する必要があり、いくつかのアプリ識別パラメータとともに "

var clientId = "my client id"; 
 
var clientSecret = "my client secret"; 
 
var redirectURI = "http://localhost:3000/instagram"; 
 
var myCode = "my instagram code"; 
 
var uri = 'https://api.instagram.com/oauth/access_token?client_id=' + clientId + '&client_secret=' + clientSecret + '&grant_type=authorization_code&redirect_uri=' + redirectURI + '&code=' + myCode; 
 
var url = encodeURIComponent(uri); 
 

 
$.ajax({ 
 
    type: "POST", 
 
    dataType: "json", 
 
    url: ' https://api.instagram.com/oauth/access_token?client_id=' + clientId + '&client_secret=' + clientSecret + '&grant_type=authorization_code&redirect_uri=' + redirectURI + '&code=' + myCode, 
 
    success: function (result) { 
 
     console.log(result); 
 
    } 
 
});

クロスオリジンブロック要求[CORS]エラーを取得...私のために働くように思われません。

+1

ブラウザのコンソールを持っている興味深いエラー**は – madalinivascu

+0

クロスオリジンブロック要求[CORS]エラーを取得する**私のために働くように見えるしません^^ – teddym

答えて

1

まず、クエリ文字列に値を送信するには、jQuery.ajaxに送信するオプションオブジェクトの.dataプロパティを使用します。プログラムでURLを作成したい場合は、encodeURIComponentで送信した値をURLエンコードすることを忘れないでください。

0

jsonpで試してください。ような何か:

function myinstagramfunction (json_object) 
{ 
    // I fetch here the json object that contains the info of all the pictures returned 
    console.log("OK"); 
} 
$.ajax({ 
    type: "GET", 
    dataType: "jsonp", 
    url: 'https://api.instagram.com/v1/tags/YOUR_HASHTAG/media/recent?access_token=YOUR_ACCESS_TOKEN_HERE&callback=myinstagramfunction', 
    success: function (result) { 
     console.log(result); 
    } 
}); 
関連する問題