5

以前はデスクトップアプリケーションとWebアプリケーションを区別するのは簡単でしたが、今日はドキュメントを読んでいるときに、この違いがあまり目立たないことに気づきました。

Facebook :: Graphモジュールを使用してデスクトップアプリケーションを作成していますが、それでも構成の段階を超えることはできません。私は認証段階で立ち往生しています:

my $ q = Plack::Request->new($env);
$fb->request_access_token($q->query_param('code'));

http://metacpan.org/pod/Facebook::Graph

「$envが必要です」と言われ続けます。ドキュメントを読んで、PlackはWebアプリケーションにのみ関係していることに気づきました。

http://metacpan.org/pod/Plack::Request

これを確認できますか?そうでない場合、どうすればこのステップを乗り越えることができますか?

Mechanizeを使用してaccess_tokenを取得し、ドキュメントで説明されているようにGETリクエストを行うことは問題ではありませんが、私の存在を複雑にしたくないので、他の方法がある場合は...

4

2 に答える 2

5

少し遅れますが、回避策があります。

アクセストークンを取得するには、こちらをご覧ください。

https://developers.facebook.com/docs/howtos/login/login-for-desktop/

  1. Mechanizeまたは必要なものを使用してクライアントを作成し、目的の資格情報を使用してログインするだけです。

  2. 説明に従ってリクエストを実行します

  3. 承認ページから移動します

  4. 応答を解析してトークンを取得します

$ fb-> access_token($ token);
于 2012-11-30T17:47:47.947 に答える
1

http://developers.facebook.com/docs/reference/api/application/によると:

注:ネイティブ/デスクトップアプリとして構成されているアプリケーションは、アプリケーションaccess_tokenを必要とするAPI呼び出しを行うことができません。

つまり、Plackではなく、アプリがWebである必要があるのはFacebookです。ただし、 access_tokenリクエストを回避できる場合は、機能する可能性があります。

于 2012-10-22T20:35:33.530 に答える