0

Facebookでアプリを作成し、プロフィールでページを作成します。「アプリをFacebookと統合する方法を選択する」セクションでは、Facebookページにテキストを投稿するだけなので、オプションを選択しません(これは問題になる可能性がありますか?)。私はこのコードを持っています:

FACEBOOK_APP_ID = 'myappid'
FACEBOOK_APP_SECRET = 'myappsecret'
FACEBOOK_PROFILE_ID = 'myprofileid'

oauth_args = dict(client_id     = FACEBOOK_APP_ID,
                  client_secret = FACEBOOK_APP_SECRET,
                  scope         = 'publish_stream',
                  grant_type    = 'client_credentials'
                  )

oauth_response = urllib.urlopen('https://graph.facebook.com/oauth/access_token?' + urllib.urlencode(oauth_args)).read()

oauth_responseはよさそうだ

しかし、私が実行すると:

resp = urllib.urlopen('https://graph.facebook.com/me/accounts?'+oauth_response).read()

エラーが発生します:

{"error":{"message":"An active access token must be used to query information about the current user.","type":"OAuthException","code":2500}}

私は何が間違っているのですか?たとえば、自分のWebサイト(Django)のボタンをクリックしたときに、ページの壁にテキストを投稿したいと思います。

アップデート:

OK、jsonでページデータを取得します。私はそれを解析し、page_access_tokenを取得しますが、これを呼び出すと:

attach = {
  "name": 'Hello world',
  "link": 'http://linktosite',
  "caption": 'test post',
  "description": 'some test'
}

facebook_graph = facebook.GraphAPI(page_access_token)
try:
    response = facebook_graph.put_wall_post('', attachment=attach)
except facebook.GraphAPIError as e:
    print e

「ターゲットユーザーがこのアクションを承認していません」というエラーが表示されます

4

2 に答える 2

2

この質問は基本的に同じ問題について尋ねており、答えはあなたが探しているもののようです: (OAuthException - #2500) 現在のユーザーに関する情報を照会するには、アクティブなアクセストークンを使用する必要があります

于 2012-11-14T19:27:08.027 に答える
0

page_access_token が正しければ、あなた (ページ管理者) は Facebook アプリケーションが Facebook ページにメッセージを投稿する許可をまだ与えていないと思います。

クライアント側でFacebookのログイン機能を確認してください。十分な許可を求めるかどうか、スコープオプションは「mange_pages publish_stream photo_upload ...」にする必要があります。「mange_pages」だけではなく、要件によって異なります

于 2014-01-25T22:40:07.183 に答える