2

Facebook API のこれら 2 つの問題で本当に迷っています...

ユーザーウォールへの投稿はすべて正常に機能していますが、ページを持つクライアントが1つあります。このページは、ユーザー自身によってではなく、最初から作成されたものです。つまり、ログインせず、Facebook のようこそ画面 > ページの作成から開始したばかりのページを作成していません。

ページは正常に動作しますが、

1) 私たちのシステムは、API 経由で投稿を送信し、代わりに ID (例: {"id":"123456_123456"}) を Facebook から受け取ります。これは、Facebook が投稿を受け入れ、投稿の ID を与えたことを示しています。

ただし、投稿は関連するページには表示されません (送信先を確認しましたが、正しいユーザー ID です)。このシステムは、他のすべてのユーザーに対して正常に機能しています。

2) このユーザーが Javascript 経由でログインすると、"me.name" に空の値が返されます (me.email などを取得しますが、名前はありません)。

これはすべて正常ですか、それともページのデータの投稿と取得の手法が異なるのでしょうか?

4

2 に答える 2

2

メールは Facebook ユーザーの個人データです。あなたが遭遇しているのは権限の問題です。

ユーザーの電子メール アドレスを取得する唯一の方法は、電子メール フィールドで拡張アクセス許可を要求することです。

ログイン後。

これはFacebook APIの仕組みであり、ユーザーの個人データを明らかにします

于 2012-10-08T17:18:40.087 に答える
0

OK、私はこれを解決しました。ここにいる誰かの能力を疑いません-おそらく私の質問はまだ誤解されています...

ページが既存のユーザーによって作成されていない一部の Facebook ページ (特にビジネス ページ) は、Facebook グループおよびユーザー ページとは異なります。短期または長期のアクセス トークンを使用して送信することはできません。

最初にトークンを使用してFacebook をhttp://graph.facebook.com/ID_OF_PAGE/accountsとして呼び出す必要があります。

Facebook はページのリストを返します。それぞれに独自の一意の ID とトークンが含まれています。

次に、必要なページのトークンを取得し、ページ ID とそのページの OWN トークンを使用して再送信します。

私が見つけたように、それらはまだ Facebook のバグです。私がクライアント用に作成したあるビジネス ページには、「Facebook を として使用する」と書かれています。- つまり、"." の前に名前がありません。- 「Facebook を MYNAME として使用」と表示されます。

これにより、JS FB.login に別の問題が発生しました。これは、人物の名前が未定義を返すためです。代わりにメールを確認する必要がありました。そうしないと、「としてログインしています」と表示されます。

FB を使用すると、新しいユーザーとして、自分でログインせずにゼロからページを作成できるためだと思います。その場合、いくつかの値が設定されておらず、めちゃくちゃになります。

おそらく誰かを助けるかもしれません...

于 2012-10-25T15:06:21.863 に答える