3

ユーザーからのアクセストークンを持っていますが、ユーザーのプロファイルからデータを取得したいと思います。Unity3D c#で作業しているため、SDKを使用できません。グラフリクエストを介してそれを取得する方法はありますか?

私はすでに試しました

https://graph.facebook.com/me?access_token=00000000000000|AAAAAAAAAAAAAAA

しかし、私にこのようなエラーをスローします。

  "message": "An active access token must be used to query information about the current user.",

権限を要求するときは、publish_streamを許可し、プロファイルデータにアクセスするようにユーザーに要求します。アクティブなアクセストークンを取得するにはどうすればよいですか?UserIDが欲しいだけです。

あなたの答えをありがとう、そして私のひどい英語をお詫びします。

4

3 に答える 3

2

したがって、ユーザー UserAgent トークンを取得したかったのですが、私の場合、そのパラメーターをアクセス URL に追加するだけで済みます。

https://graph.facebook.com/oauth/authorize?type=user_agent&client_id=000000000000000&redirect_uri=http://yourRedirectdomain.com&scope=user_photos,email,user_birthday,offline_access,plublish_stream

Facebook はユーザーを redirect_uri URL にリダイレクトし、アクセス トークンはハッシュ形式で提供されます。追加のヒント: Javascript 経由で Hashed トークンにアクセスする必要があります。

var hash = document.location.hash;
 var n=hash.split("=");

これは 1 つの方法です。もっと良い方法があると確信しています。

答えてくれてありがとう!

于 2012-07-04T18:25:56.637 に答える
0

APIには「私」が誰であるかを知る方法がないため、アプリアクセストークンを使用してAPIにクエリを実行することはできません。/me

ユーザーアクセストークンにのみ、それらが適用するユーザーIDの情報が含まれているため、/me正常にクエリを実行するために使用できるのはそれらのトークンのみです。

于 2012-07-04T10:41:11.177 に答える
0

あなたはGraph Call / HTTPリクエストが正しいようです。

エラーに基づいて、アクセストークンの有効期限が切れていると推測しています。通常、最後に使用してから約 1 ~ 2 時間持続します。(私が正しく思い出せば)。そのため、ユーザーは Web サイトの使用を開始し、ユーザーがそのセッションで実際に Web サイトを使用している間、Web サイトはアクセス トークンを使用してグラフ呼び出しを行うことができますが、トークンはその後すぐに期限切れになります。

ただし、約 60 日間有効な access_token を Facebook に要求することもできます。ここでいくつかの情報を確認してください :: http://developers.facebook.com/roadmap/offline-access-removal/

現状では、Facebook で開発者向けドキュメントを参照してこの情報を見つけようとすることは、不可能ではないにしてもかなり困難です。:-/

于 2012-07-04T02:00:21.170 に答える