Beispiel #1
0
 private function _callbackFlow()
 {
     //リクエストトークン(一時的なトークン)がセッションに保存したものと一致するか
     if ($_GET['oauth_token'] !== $_SESSION['oauth_token']) {
         throw new \Exception('invalid oauth_token');
     }
     $conn = new TwitterOAuth(CONSUMER_KEY, CONSUMER_SECRET, $_SESSION['oauth_token'], $_SESSION['oauth_token_secret']);
     //アクセストークンを取得
     $tokens = $conn->oauth('oauth/access_token', ['oauth_verifier' => $_GET['oauth_verifier']]);
     //データベースにユーザー情報を保存する
     $user = new User();
     $user->saveTokens($tokens);
     // echo "tokens saved";
     // exit;
     session_regenerate_id(true);
     // session hijack
     //user情報をとってくる
     $_SESSION['me'] = $user->getUser($tokens['user_id']);
     //リクエストトークンはアンセット
     unset($_SESSION['oauth_token']);
     unset($_SESSION['oauth_token_secret']);
     //ログイン中のトップ画面へ
     logining();
 }
 /**
  * Create a new user instance after a valid registration.
  *
  * @param  array  $data
  * @return User
  */
 protected function create(array $data)
 {
     return User::create(['name' => $data['name'], 'email' => $data['email'], 'password' => bcrypt($data['password'])]);
 }