Код: Выделить всё
$config = json_decode(file_get_contents(".service.dat"));
if( isset($config->key) && isset($config->secret) ) {
$this->access_token = new OAuthConsumer($config->key, $config->secret);
}
Код: Выделить всё
function getRequestToken()
{
$consumer = $this->consumer;
$request = OAuthRequest::from_consumer_and_token($consumer, NULL, "GET", $this->request_token_path);
$request->set_parameter("oauth_callback", $this->oauth_callback);
$request->sign_request($this->signature_method, $consumer, NULL);
$headers = Array();
$url = $request->to_url();
$response = $this->httpRequest($url, $headers, "GET");
parse_str($response, $response_params);
$this->request_token = new OAuthConsumer($response_params['oauth_token'], $response_params['oauth_token_secret'], 1);
}
Код: Выделить всё
function generateAuthorizeUrl()
{
$consumer = $this->consumer;
$request_token = $this->request_token;
return $this->authorize_path . "?oauth_token=" . $request_token->key;
}
Обновление токена доступа очень просто и может происходить без
диалогового окна авторизации для пользователя. Другими словами, это
непрерывный процесс, который не влияет на работу пользователя с вашим приложением
. Просто заставьте свое приложение пройти процедуру авторизации
, чтобы получить новый токен доступа с дополнительным сроком действия
60 дней.
Мне не совсем понятно, что это значит. Если мне придется повторить весь путь от получения токена запроса еще раз, не потребует ли это от меня повторного выполнения http-запроса и открытия всплывающего экрана входа в систему? Как мне этого избежать? Буду признателен за предложение.
Спасибо.
Подробнее здесь: https://stackoverflow.com/questions/451 ... resh-token
Мобильная версия