Weibo api - обновить токен

Кто-нибудь нашел способ обновить токен с помощью API Weibo?

Я реализовал аутентификацию на своем веб-сайте, чтобы получить маркер пользователя, но в JSON, который возвращает API, нет поля "refresh_token". Пропадая эту информацию, я не могу обновить токен пользователей моего приложения.

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

Я использую SDK facebook, предоставленный в документации Weibo https://github.com/xiaosier/libweibo

И мой код аутентификации выглядит так:

    $o = new SaeTOAuthV2( WEIBO_APP_API_APP_KEY , WEIBO_APP_API_SECRET );
    $code_url = $o->getAuthorizeURL( WEIBO_APP_CALLBACK_URL );
    $error_message = '';
    if (isset($_GET['code']) && empty($val)) {
      $keys = array();
      $keys['code'] = $_GET['code'];
      $keys['redirect_uri'] = WEIBO_APP_CALLBACK_URL;
      try {
              $token = $o->getAccessToken( 'code', $keys );
              //$token['refresh_token_at'] = strtotime('+2 week');
      } catch (OAuthException $e) {
              $error_message = pll__('There was a problem during connection process. Please try again or contact the website administrator');
      }
    }

JSON, который возвращает API:

{
    "access_token": "2.00pxxxxxxxxxxxxxxxxxxxxxxx",
    "remind_in": "157679999",
    "expires_in": 157679999,
    "uid": "65xxxxxxx",
    "isRealName": "true"
}

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

Есть что-то тревожное, временные метки для remind_in и expires_in дают следующую дату при преобразовании в удобочитаемую дату: 1974-12-30 23:59:59

0 ответов

Другие вопросы по тегам