0

私の Web サイトは、Facebook API を呼び出して、次のようにユーザーの情報を取得します。

FB.api('/' + uid, function(response)
{
    alert(JSON.stringify(response));
});

uid自分のIDはどこですか?ドキュメントlinkには、これにはフィールドを含める必要があると記載されており、確かに使用されていました。そのために認証トークンは必要ないと述べています(とにかく提供しますが)。それでも、私が受け取る実際の応答には、次のフィールドが含まれています。

{"id":, "name":, "first_name":, "last_name":, "username":, "gender":, "locale":}

(値を削除)

何が起こったlinkのですか、どうすれば元に戻すことができますか? Graph API Explorer を介してまったく同じことを要求すると、リンクを取得できます。

4

1 に答える 1

1

ここでリンク フィールドが欠落している理由は完全にはわかりませんが、考えられる解決策をいくつか示します。

まず、「/user-id」の代わりに「/me」を使用してみてください。fb と統合されたサイトでこれを行うと、リンクが返されます。

次に、フィールドを具体的に尋ねてみることができます。「/123456789?fields=link,first_name」のように、必要なフィールドをグラフ API 呼び出しに追加できます。

最後に、他のすべてが失敗した場合は、いつでも自分のユーザー ID を使用してリンクを生成できます。例: var url = "http://www.facebook.com/" + userId;

これは、回答にリンク フィールドがないことを説明するものではありませんが、解決策を見つけるのに役立つことを願っています。

于 2012-05-11T15:42:27.080 に答える