2011-01-11 8 views
6

私はAndroidのアプリケーションだけでなく、Androidクライアントとの通信も持っているWebサイトを開発しています。私はFBのログインを使用したいが、私が見る問題はこれです:AndroidのFacebookのログインとWebサーバー

クライアント、FBログインを使用し、access_tokenを取得します。

Webサーバーがクライアントが参照しているアカウントを知る必要があるため、クライアントとWebサーバーはこのaccess_codeを使用してどのように通信しますか。私はまた、WebサイトにもFBログインを実装したいと思っています。

私が考えていた一つの方法した

クライアントログイン: 1)使用FBのログインとaccess_tokenはを取得します。 2)access_tokenを使用して、ユーザー情報を取得します。 3)Webサーバーにaccess_tokenとユーザー情報を与えます。 4)Webサーバーもaccess_tokenと同じFB操作を実行し、ユーザー情報を取得します。 5)ユーザー情報の一致を検証し、それに基づいてユーザーアカウントを決定します。 6)このリンク用に、ClientとWeb Serverの間に別のaccess_tokenを設定します。

このようにしても、これ以上有効にならない場合や、実際にログインして実際のアカウントとしてユーザーの電子メールアドレスを取得し、Webサーバーに使用するアカウントであることを伝えるだけの場合もあります。

他の人がこれをやりましたか?

+0

スティーブンス、セキュアなログインフローを思いついたことはありますか?私は同じ問題に直面しており、あなたの踏み台は私が試みようとしているものです。それが成功したかどうか思い出してください。 –

+0

Brady、あなたは何かしました:) – ThanksBro

+0

あなたはこれを理解しましたか?あなたのどちらか:Stephenまたは@BradyEmerson私は同じことをしようとしており、良い方法を知る必要があります。 – necromancer

答えて

1

クライアント/サーバー間の通信には、独自のクライアントIDを使用する必要があります。
いくつかのシナリオで変更されたため、access_tokenのfacebookでリレーしないでください。
メールを受け取ることもできないため、メールの取得は完全な解決策ではありません。

一般に、Facebook Connectを両側に実装する必要があります。

1.Connectは、ユーザからの
2.Get権限をFacebookへ投稿

(ここでは権限について読む: http://developers.facebook.com/docs/reference/api/permissions/)ユーザーとして3.Register
を、彼にIDを与える(あなたが欲しい場合はuidをFacebookを利用して使用することができます) 。

ユーザーがあなたのサイト/アプリに戻ると、再びログインする必要があります.UIDを取得し、サーバーにユーザーの詳細を問い合わせます。

access_tokenについての1つのことは、FacebookのAPIを照会する必要があることです。 facebookを使用してサイト/モバイルにログインするたびにfacebookから取得することができます。また、offline_access権限を要求することもできます。その後、facebookなどでパスワードを変更するまで同じaccess_tokenを使用します。それはドキュメント上にあります)。
この方法では、ユーザーが現在自分のサイトにログインしていなくても、facebook apiのクエリを実行できます。

関連する問題