На первый взгляд странное OAuthException - PullRequest
5 голосов
/ 25 сентября 2011

Я учусь создавать приложения для fb, и с первой попытки получаю странное OAuthException. В учебном пособии четко упоминается, что мне нужно передать redirect_uri, client_secret, client_id и код (из фазы аутентификации приложения). Но когда поток завершается, вместо получения токена доступа здесь появляется объект ошибки JSON:

{"error":{"message":"client_secret should not be passed to \/oauth\/access_token\/","type":"OAuthException"}}

РЕДАКТИРОВАТЬ: это фрагмент, который я использую для создания URL (простите за чрезмерную 2-ую строку, пожалуйста)

url = "https://graph.facebook.com/oauth/access_token/"
url += "?" 
url += urllib.urlencode([('client_id',client_id),
                           ('redirect_uri', redirect_uri),
                           ('client_secret', client_secret),
                           ('code', code)])

где переменные содержат правильные значения. (Проверено> 5 раз)

1 Ответ

9 голосов
/ 25 сентября 2011

Вы должны удалить / сразу после access_token в URL, чтобы он читал graph.facebook.com/oauth/access_token?, а затем ваши параметры.Если это не сработает, пожалуйста, покажите весь пример URL, который вы сгенерировали (с реальным client_secret x'ed, конечно), так как я недостаточно знаком с urllib.urlencode, чтобы быть уверенным в форматировании, хотя эта часть выглядитс первого взгляда.

...