2016-08-08 1 views
0

私はユーザーがアプリケーションにログインするウェブサイトを用意しています。自分の写真を自分のページに入れて編集することができます。JSのFacebook APIを使用してFacebookの画像IDに基づいて画像ソース(URL)を取得するには

私はアルバムを取得する方法はこれです:

FB.api(
    "/me/albums", 
    function (response) { 
     if (response && !response.error) { 
      ... 
     } 
    } 
); 

はその後、アルバムIDのリストを取得した後、私は実行して、それぞれの写真を得るためにそれらを反復処理:

FB.api(
    "/"+albumId+"/photos", 
    function (response) { 
     if (response && !response.error) { 
      ... 
     } 
    } 
); 

これでしょうイメージIDを含むオブジェクトの配列を返します。

FB.api("/imageId", function(){})を使用すると思っていましたが、idを持つ同じイメージオブジェクトを返します。

イメージソース/フルパスを取得して、HTML IMGタグ内に追加することができます。しかし、私はまだそれに問題があります。

私はこのURLから「JSON」を取得することにより、それを行うためのいくつかの方法があったことを見た:

http://graph.facebook.com/"+photoId 

しかし、私は、それはAJAXを使用して取得しようとする場合には、例えば私(かもしれないが、認証エラーがスローされますFBオブジェクトが行う認証がAjaxに含まれていないためです)

どうすれば結果を得ることができますか?

ありがとうございます。

+0

希望のフィールドを尋ねる必要があります。http://stackoverflow.com/a/32585470/1427878 – CBroe

+0

しかし、私は特定の写真IDのURLを取得したいと思います。持っている...私はフィールドのuser_photosをsned場合、それはすべての写真のIDを返します、右か? – msqar

+0

_ "私はフィールドのuser_photosをsnedしたら" _ - 何?そして、あなたが本当に探している情報 - Facebook上の写真へのURLは、ユーザーがそこで見ることができるようになっていますか?あなたのサイトの 'img'要素で使用できるように、画像のFacebookのCDNのURLです。または...? – CBroe

答えて

0

だから@CBroeからいくつかのドキュメントへのリンクを取得した後、私はフィールド「画像」を送信することにより、この

FB.api(
    "/"+photoId, {"fields" : "images"}, 
    function (response) { 
     if (response && !response.error) { 
      console.log(response) 
     } 
    } 
); 

を行うことによって、それはその特定のイメージの異なるサイズにすべての絶対パスを返すことがわかりました。

100x100ピクセルのサムネイルが必要な場合は、フィールドとして「画像」を渡すことができます。

関連する問題