Ошибка FB: ожидается 1 '.'на входе между открыткой и полезной нагрузкой - PullRequest
8 голосов
/ 08 декабря 2011

Я закончил свое приложение, а затем попробовал его на 3 учетных записях FB, и это было нормально, но 4 th имеют постоянную ошибку (не может получить токен доступа):

com.restfb.exception.FacebookOAuthException: получен ответ об ошибке Facebook типа OAuthException: ожидается 1 '.' На входе между открыткой и полезной нагрузкой.

Я несколько раз пытался удалить приложение и установить его на эту учетную запись, но ничего не изменилось.

Я использую Java и restFB клиент.

Это код, где я получаю токен доступа:

if (request.getParameter("code") != null) {
    String code = request.getParameter("code");
    String url = "https://graph.facebook.com/oauth/access_token?"
        + "client_id=" + clientId + "&" + "client_secret="
        + clientSecret + "&" + "code=" + code + "&" + "redirect_uri="
        + redirectURL +"&type=web_server";
    String accessToken=readUrl(url).split("&")[0].replaceFirst("access_token=", "");
    //....
}

Я видел здесь кто-то с той же ошибкой, он сказал, что решение было:

замена "|" с "% 257C", что сделало мой токен доступа недействительным "

Я не мог понять, что он имеет в виду.

Ответы [ 3 ]

1 голос
/ 04 августа 2015

Убедитесь, что вы проверяете параметр «code», возвращаемый Facebook перед подписанием запроса, а не «токен доступа». Это была моя ошибка.

1 голос
/ 17 февраля 2012

Вероятно, стоит зарегистрировать ответ на запрос /oauth/access_token и значение, которое вы извлекаете для использования в качестве токена доступа.

Для учетной записи, которая не работает, проверьте, включает ли ответ /oauth/access_tokenдругие параметры до access_token.IIRC Я видел ответы типа

expiry=86400&access_token=AAAxxxx
0 голосов
/ 20 июля 2015

У меня возникла та же проблема, и после отладки я пришел к единственному выводу, что когда выбрасывается это сообщение, это может означать, что токен истек или недействителен.Проверка со сгенерированным токеном не должна выдавать эту ошибку.

...