2012-04-08 20 views
1

FacebookグラフAPIを使用している場合、その人物が公開した情報を公開している場合は誰でも公開情報を見ることができます。例えば、Mark Zuckerberg - facebookの創設者がユーザーID#4を持っているので、 https://graph.facebook.com/4 =>名前、年齢、場所などの基本情報を見ることができます。あなたは1万人から1にIで_ https://graph.facebook.com/i私を変更することを、あなたは)限り、彼らは公共の場で自分の情報を設定するようJavaを使用してFacebookの永続的なアクセストークンを取得する方法

を万人のユーザーの情報を参照するか、行くことがありあなたは人のお気に入りや教育などのより多くの情報を見ることができます... _HTTPS:?XXXと//graph.facebook.com/4 access_tokenは= XXXが固有のコードで、それはあなたがログイン中のFacebookに毎回変わる(http://developers.facebook.com/docs/reference/api/で詳細を参照)

私の目標であります基本的なjava URLを使用してこれらのリンクに行き、すべての情報(基本的にテキストです)を取得し、テキストファイルに保存します。_https://graph.facebook.com/4問題はありませんが、 XXXのアクセストークンコードは毎回変更されるか、20〜30分後に期限切れになるため、プログラムを長く実行してデータを取得することはできません。 質問永久的なアクセストークンを取得したり、長い時間延長したりするには、小さなJavaプログラムのみを使用していることを覚えておいてください。Facebookアプリなどとは何も関係ありません。ありがとうございました!

答えて

1

残念ながら、永続的なアクセストークンを取得することはできませんが、アクセストークンが期限切れになったときにエラーをキャッチして新しいトークンを要求することができます。また、あなたがそれを違反していないことを確認するために、Facebookの利用規約を読むこともできます。

+0

私は考えていたので、永久的なコードを取得する方法はありませんでした。アイデアや有用なリンクがありますか?エラーが発生するたびに新しいアクセストークンを要求する方法について考えていますか?私が検索しようとしたリンクは、私の場合ではないFacebookアプリ開発に評価されているようです。私が収集しようとしているこのデータセットは、統計目的のみのものであり、個人情報が公表されていないか、商業目的で使用されているわけではありません。例えば、アメリカに住んでいる25歳未満の30% ......そしてそのようなもの。 –

+0

申し訳ありませんが、私はしないでください。私はあなたがFacebookのアプリを使って作業している場合にのみそうすることができると思います。 (私が気付いていない未決の回避策があるかもしれません)。 –

0

永久アクセストークンを取得することはできますが、有効期限が切れた後に更新することは非常に簡単です。Thatの記事は方法です。魔法のURLは次のとおりです。

https://www.facebook.com/dialog/oauth/?client_id=YOUR_APP_ID&redirect_uri=YOUR_REDIRECT_URL&state=YOUR_STATE_VALUE&scope=COMMA_SEPARATED_LIST_OF_PERMISSION_NAMES 
  • client_id
    のアプリのID。 は、Javaなどで「オフライン」で作業していても、Facebookブックマークを登録する必要がありますが、アプリを実際にプログラムする必要はありません。あなたは固定されたアプリのID(ここでそれが必要です)を取得するようにアプリを登録しても問題ありません。
  • redirect_uri
    これは重要なステップです - facebookはredirect_uriで指定されたURIにリダイレクトし、そのURIに "#access_token = ..."を追加します。あなたは、トークンを取得するために、そのURIを解析することができます:

は、ウェブブラウザで上記のリンクを呼び出しREDIRECT_URIとしてhttp://localhostを使用すると、あなたは大丈夫です。ブラウザはhttp://localhost#access_token=....を呼び出そうとしますが、明らかに失敗しますが、URLを解析してトークンを取得できます。それは非常に単純なプロセスではありませんが、それは私のために動作します。

+0

それはあなたのために働いたのですか? –

1

アクセストークンの有効期間を60日間に延長することができます。 あなたはこの通過することができます。

:あなたは、サーバー側からの次の呼び出しを行う場合

https://developers.facebook.com/docs/facebook-login/access-tokens/

は、Facebookはあなたに2ヶ月間有効となりますアクセストークン(拡張アクセストークン)を返します。

GET /oauth/access_token? 
    grant_type=fb_exchange_token&   
    client_id={app-id}& 
    client_secret={app-secret}& 
    fb_exchange_token={short-lived-token} 
関連する問題