2012-04-24 4 views
3

は、私がプロフィール画像をこのように得ることができます知っている:ユーザーからリアルサイズのプロフィール画像を取得する方法は?ユーザーID XUIDを持つ

http://graph.facebook.com/xUID/picture?type=large

問題は、(それはおよそ200pxの幅のだ)そのURLから返された画像は実際のサイズではないということです。

私はそのユーザー画像を取得する必要がありますが、実際のサイズです。

何私がこれまで行ってきたことである:

1.ユーザーアルバムその上

https://graph.facebook.com/me/albums?access_token=xToken

2.反復処理を取得し、タイプを持っているアルバムを取得= "プロフィール"。私はFQLクエリを構築することができるアルバムID(xAID)で

3:

SELECT pid, object_id, src_big FROM photo WHERE album_object_id = xAID 

4.そして、そこのプロフィール画像を取得します。

5.ユーザーがアップロードした最後のものを繰り返し検索する必要があります。

したがって、このプロセスは複雑で時間がかかります。これを成し遂げるためのより良い/よりシンプルな/より速い方法がありますか?

ありがとうございます!

答えて

0

[OK]をクリックして質問にしました。アルバムをブラウズし、そこから最初のプロフィール画像を取得します。

インデックス可能な列ではないため、WHERE句に「型」を含めることができないため、Julioの回答は機能しません。

-1

ゲットcover_object_id:?

FQL Q = SELECT cover_object_id、所有者は= = "プロファイル"

を "USERID" とタイプのアルバムからタイプを取得src_big:?

FQL Q = PID SELECT

のIMG SRC = "上記で得られたsrc_bigは、" これは、いくつかのに役立ちますOBJECT_ID = "上記で得られたカバーオブジェクトID" の写真から、OBJECT_ID、src_bigもの?

+0

インデックス可能な列でないため、「型」を置くことはできません。 – santiagobasulto

1

は1つだけですFQLクエリを実行する必要があります。

SELECT pid, object_id, src_big 
FROM photo 
WHERE object_id IN 
    (SELECT cover_object_id 
    FROM album 
    WHERE owner=me() AND type="profile") 

src_bigは、元のソースをプロファイルするためのリンクが含まれています。 特定のユーザーのプロフィール画像を取得する必要がある場合は、me()を特定のユーザーIDで変更してください。

9
+0

画像を要求する前に、実際の画像のサイズをどのように知っていますか? – santiagobasulto

+0

私は現在720x720が最大であると信じています。サイズを事前に知りたい場合は、これを行うことができます:http://developers.facebook.com/tools/explorer/?method=GET&path=me%3Ffields%3Dpicture.width%28162%29.height%28159%あなたが望む最小サイズを指定してください。 –

+0

これを数日前から探していただきありがとうございます –

0

カバー写真も数日前のように、常に最新の写真ではありません。

関連する問題