0

私はかなりの量のFacebook開発経験を持っていますが、これは私に髪を引っ張らせました。とても小さいものに違いないのですが、わかりません。最近、自分のページにアクセスしたユーザーの名前「ようこそ[あなたの名前]」を表示するウェルカムタブのあるFacebookページをいくつか見ました。例はここにあります:

https://www.facebook.com/Tony.Samaha.Official.Page

私の知る限り、ユーザーの許可なしにユーザーIDを取得することはできません。権限を取得すると、署名されたリクエストでユーザーIDを取得できるようになります。上記の例のように、FacebookのユーザーIDまたは名前を取得するにはどうすればよいですか?これはどのように機能していますか?これは達成できますか?

参考:iframeタブを使用しています。

4

2 に答える 2

3

signed_requestsのドキュメントを確認してください。ユーザーがアプリケーションにsigned_requestアクセスすると、URLに投稿されます。ドキュメントには次のように記載されています。

  • signed_requestは、Facebook環境に読み込まれるときにFacebook.comのアプリに渡されます
  • 特定のユーザーがアプリダッシュボードを使用してアプリを削除するたびに、signed_requestがデベロッパーアプリに不正なコールバックを登録したアプリに渡されます
  • signed_requestは、ユーザーがアプリに正常に登録するたびに、登録プラグインを使用するアプリに渡されます

このリクエストをデコードする必要があり(詳細については上記のリンクを参照)、そこから訪問ユーザーのuser_idを抽出できます。次に、次のようにGraph APIをクエリするだけです。そうすると、ユーザー名
https://graph.facebook.com/USER_ID含むそのユーザーの公開情報が返されます。

于 2012-02-08T16:53:33.770 に答える
2

ユーザーはまだ古い静的FBMLアプリケーションを使用しているため、fb:nameタグを使用している可能性があります。ただし、これは現在非推奨になっていると思います。したがって、実際には、リンクしたページを更新する必要があります。

于 2012-02-07T16:58:17.037 に答える