(# 100) Ошибка «Тема должна быть учетной записью страницы» при попытке опубликовать видео на странице Facebook - PullRequest
0 голосов
/ 27 мая 2019

Я пытаюсь создать приложение, которое сможет публиковать видео на странице Facebook.Я получаю список доступных страниц через / me / запрос учетной записи и получаю правильный ответ:

[{
  "access_token":"XXX",
  "category":"Music Video",
  "category_list":[{"id":"1207","name":"Music Video"}],
  "name":"My mighty musical page",
  "id":"XXX",
  "tasks":["ANALYZE","ADVERTISE","MODERATE","CREATE_CONTENT","MANAGE"]
}]

, после этого я беру значение "id" и отправляю запрос на запуск живого видео, используя значение id в качестве page-идентификатор в ссылке:

{Запрос: accessToken: {токен AccessToken: ACCESS_TOKEN_REMOVED разрешения: [manage_pages, publish_video, publish_pages, user_videos, public_profile, pages_show_list, publish_to_groups, groups_acchange_7_7]graphPath: / XXX / live_videos , graphObject: null, httpMethod: POST, параметры: Bundle [{privacy = {"value": "EVERYONE"}}]}

В результате яполучить следующую ошибку:

{HttpStatus: 400, errorCode: 100, subErrorCode: -1, errorType: OAuthException, errorMessage: (# 100) Тема должна быть учетной записью страницы} / APP: [FacebookFramework] Попытка начать потоковую передачу на Facebook вернула ошибку: код 100, сообщение: (# 100) Тема должна быть учетной записью страницы {FacebookServiceException: httpResponseCode: 400, facebookErrorCode: 100, facebookErrorType: OAuthException, message: (# 100) Тема должна быть учетной записью страницы}

, которая фактически ничего не описывает о том, что идет не так.У меня есть все необходимые разрешения.Я создатель страницы и имею права администратора.Я понятия не имею, где я могу найти этот «правильный идентификатор».Я пропустил что-то важное?

PS.Также я использую аналогичный код для публикации в группе, и он работает нормально.

1 Ответ

0 голосов
/ 28 мая 2019

Да, вы были правы, проблема была в том, что я не передал правильный токен при попытке начать потоковую передачу.Правильный токен получен с ответом / me / account.Я создал токен следующим образом

        final AccessToken currentToken = getCurrentAccessToken();
        new AccessToken (
            "XXX", //custom token string here
            currentToken.getApplicationId(),
            currentToken.getUserId(),
            currentToken.getPermissions(),
            currentToken.getDeclinedPermissions(),
            null,
            null,
            null,
            null
        );

, и он хорошо работает с этим новым токеном

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...