Хорошо, что вы делаете, пока вы не получите перенаправление от Google, совершенно правильно.
- oauth_verifier
- oauth_token
oauth_verifier
код - это один Google, который отправит вас обратно, если пользователь авторизует ваше приложение для доступа к его / ее профилю, поэтому вам нужен этот верификатор, чтобы получить AccessToken с токеном доступа, и вы сможете получить доступ к профилю пользователя / дате независимо от того, что вас охватывает определили.
oauth_token
это связано с вашим приложением, и Google идентифицирует вас с этим, оно останется таким же для вашей заявки
поэтому, когда вы получаете AccessToken
от Google / You Tube API, вызывая что-то вроде
Token token=authGetRequestToken.getRequestToken(service);
этот токен запроса содержит ваш секрет, поэтому перед перенаправлением пользователя на YouTube необходимо сохранить этот токен либо в базе данных, либо в сеансе. Как только пользователь перенаправится обратно в ваше приложение, вам необходимо вернуть этот токен, как только вы используете этот токен. проверочный код вместе с этим токеном для получения Access_token как
Token accessToken = authGetAccessToken.getAccessToken((Token)
session.get(OAuthConstants.REQUEST_TOKEN), verifier);
и как только вы получите это accessToken
, вы будете счастливы идти
надеюсь, что это имеет смысл
edit1
Verification_code отправляется системой OAuth, чтобы указать, что пользователь предоставил доступ и авторизовался там самостоятельно. Это только часть механизма рукопожатия.
Я прошел страницу, о которой упоминал ОП, это то, что там упоминалось
$response = $this->google_oauth->get_request_token(site_url("/user/youtube_access"));
$this->_store_somewhere($response['token_secret']);
Так что его просят сохранить token_secret
в каком-то месте, вы можете выбрать DB или сеанс, каким бы способом вы ни выбрали, так как этот token_secret
будет использован для повторного восстановления запроса на более позднем этапе
в моем примере кода я сохранил целое Request_Token
, которое содержит token_secret
и oauth_token
как только пользователь будет перенаправлен обратно в ваше приложение, вам необходимо выполнить следующие шаги
$token_secret = $this->_get_from_storage('token_secret');
$oauth = $this->google_oauth->get_access_token(false, $token_secret);
Здесь мы извлекаем token_secret, который мы сохранили на последнем шаге, а затем отправляем с просьбой Google предоставить access_token
я также делаю почти то же самое, передавая верификатор вместе с token_secret
надеюсь, вам ясно