2011-07-19 3 views
0

私は、facebook.com/dialog/feedを介してユーザの壁に何かを投稿する、PHPで簡単なFacebookのキャンバスアプリ(ページタブ)を作っています。私はそれを簡単にするつもりですので、access_tokenリクエストとfacebook->api()コールをスキップします。投稿を共有したユーザーのリストを保存する必要があります。アクセストークンを持たないユーザーIDを取得することは可能ですか?

実際には、許可なしで正常に動作しますが、壁ポストの後にユーザーの一意の識別子(および/または多分名前)を収集する必要があります。それはアクセストークンを要求することなく可能ですか?

ウォールポストが成功した後、ユニークなpost_idが保存されます。これは宝くじには十分でしょうか?

実際には、返されたPOST_ID文字列の最初の部分は一意のユーザーIDです。

答えて

1

あなたのアプリを許可していないユーザー名は間違いなく得られますが、ユーザーIDの取得にも同じことが当てはまると思います。

投稿IDを保存する際の問題は、同じユーザーが複数の投稿を簡単に作成できることです。これは、懸賞の中ではおそらく好ましくありません。私が似たようなプロジェクトで見つけたことは、ユーザーが賞金を獲得したい場合、基本情報へのアクセスを許可することです。

+0

ありがとうございます。私が理解できない唯一のことは、 'access_token'なしでユーザーの壁に投稿できるということですが、成功した壁ポストの後でユーザーIDを取得できません。これは奇妙です。 – Eduard7

+0

フィードダイアログを使用してユーザーの壁にのみ投稿することができます。これにより、認証情報が非表示になります。これは直接ポストメソッドではないため許可されています。ポストするには、 'publish_stream'パーミッションで直接認証を要求する必要があります。ユーザーIDが返されてもフィードダイアログが返された場合は、認証要件を迂回します。 – shanethehat

+1

私は適切な認証でプロジェクトを行いましたが、結局のところ、 'POST_ID'文字列の最初の部分がユニークなユーザIDであることを認識しただけです...私はバカのように感じます;-) – Eduard7

0

ユーザIDを格納するためにPOST_IDに頼るべきではありません。 POST_IDは不透明な識別子であり、ユーザーIDを含むことは保証されておらず、すべてのPOST_IDには含まれていません。

関連する問題