Твиттер oAuth логин. Как получить getAuthorizeURL (авторизовать) в первый раз и (аутентифицировать), когда пользователь предоставил разрешения

Я использую Twitter oAuth PHP Library (от Авраама Уильямса) для входа в систему через twitter для моего веб-приложения.

A. Модель кода выглядит следующим образом:

1. URL обратного вызова в настройках Twitter установлен на:
http://example.com/entrypoint/twitterlogin.php

2.The twitterlogin.php file
<?PHP
if (empty($_GET['oauth_verifier'])){
$request_token = $twitteroauth->getRequestToken();
$_SESSION['onetime_oauth_token'] = $request_token['oauth_token'];
$_SESSION['onetime_oauth_token_secret'] = $request_token['oauth_token_secret'];
}

if (!empty($_GET['oauth_verifier']) && !empty($_SESSION['onetime_oauth_token']) && !empty($_SESSION['onetime_oauth_token_secret'])) {
$twitteroauth = new TwitterOAuth(YOUR_CONSUMER_KEY, YOUR_CONSUMER_SECRET, $_SESSION['onetime_oauth_token'], $_SESSION['onetime_oauth_token_secret']);
$access_token = $twitteroauth->getAccessToken($_GET['oauth_verifier']);
$GoesToDB = $access_token['oauth_token'];
$GoesToDBS = $access_token['oauth_token_secret'];
$user_info = $twitteroauth->get('account/verify_credentials');
$GoesToDBArray = $user_info;
}else{
if ($twitteroauth->http_code == 200) {
//generates ~/authenticate?oauth_token=token
$url = $twitteroauth->getAuthorizeURL($request_token['oauth_token']);

//generates ~/authorize?oauth_token=token
//$url = $twitteroauth->getAuthorizeURL($request_token['oauth_token'], false);//when and how to use this
exit(header("refresh:0;url=".$url));
} else {
//some error handler
}
}
?>

Б. Ожидаемое поведение / результаты

  1. Если пользователь является первым пользователем, то создайте URL авторизации (~ / authorize? Oauth_token = token)
  2. После того, как пользователь предоставил разрешения приложению, создайте URL аутентификации (~ / authenticate? Oauth_token = token) для будущих входов в систему.

C.Queries

  1. Является ли подход правильным для ожидаемого поведения
  2. Должен ли я попросить пользователя использовать URL-адрес авторизации, если он впервые, в противном случае используйте URL-адрес аутентификации (аналогично входу в систему и регистрации)
  3. Есть ли способ проверить, авторизовал ли пользователь приложение, используя (onetime_oauth_token или что-то еще)

D. Заранее спасибо 🙂 .. ты спаситель жизни.

0

Решение

Использовать этот —

$url = $twitteroauth->getAuthorizeURL($request_token['oauth_token'],TRUE);
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]