###やりたいこと
Yahoo連携ログインを実装したい。
###エラー内容
Parse error: syntax error, unexpected '...' (T_ELLIPSIS) in callbank.php on line 28
###コード
最初のページ
PHP
1<?php 2// start.php 3 4// YConnectライブラリ読み込み...(1) 5require("lib/YConnect.inc"); 6 7// アプリケーションID, シークレット...(2) 8$client_id = "id"; 9$client_secret = "secret"; 10 11// コールバックURL...(3) 12$callback_uri = "callbank.php"; 13// リクエストとコールバック間の検証用のランダムな文字列を指定してください...(4) 14$state = "44Oq44Ki5YWF44Gr5L+644Gv44Gq44KL77yB"; 15// リプレイアタック対策のランダムな文字列を指定してください...(5) 16$nonce = "5YOV44Go5aWR57SE44GX44GmSUTljqjjgavjgarjgaPjgabjgog="; 17// レスポンスタイプ...(6) 18$response_type = OAuth2ResponseType::CODE_IDTOKEN; 19// Scope...(7) 20$scope = array( 21 OIDConnectScope::OPENID, 22 OIDConnectScope::PROFILE, 23 OIDConnectScope::EMAIL, 24 OIDConnectScope::ADDRESS 25); 26// display...(8) 27$display = OIDConnectDisplay::DEFAULT_DISPLAY; 28// prompt...(9) 29$prompt = array( 30 OIDConnectPrompt::DEFAULT_PROMPT 31); 32 33// クレデンシャルインスタンス生成 34$cred = new ClientCredential( $client_id, $client_secret ); 35// YConnectクライアントのインスタンス生成 36$client = new YConnectClient( $cred ); 37 38// デバッグ用ログ出力...(10) 39$client->enableDebugMode(); 40 41// Authorizationエンドポイントにリクエスト...(11) 42$client->requestAuth( 43 $callback_uri, 44 $state, 45 $nonce, 46 $response_type, 47 $scope, 48 $display, 49 $prompt 50); 51
callbank
PHP
1<?php 2require("lib/YConnect.inc"); 3 4use YConnect\Credential\ClientCredential; 5use YConnect\YConnectClient; 6 7// アプリケーションID, シークレット 8$client_id = "id"; 9$client_secret = "secret"; 10$redirect_uri = "callbank.php"; 11 12$cred = new ClientCredential( $client_id, $client_secret ); 13$client = new YConnectClient( $cred ); 14 15try { 16 // Authorization Codeを取得 17 $code_result = $client->getAuthorizationCode( $state ); 18 19 // Tokenエンドポイントにリクエスト 20 $client->requestAccessToken( $redirect_uri, $code_result ); 21 22 // アクセストークン, リフレッシュトークンを取得 23 $access_token = $client->getAccessToken(); 24 $refresh_token = $client->getRefreshToken(); 25 26} catch ( TokenException $e ) { 27 // 再度ログインして認可コードを発行してください 28}行など...(8) 29try { 30 // IDトークンを検証 31 $verify_result = $client->verifyIdToken( $nonce ); 32 if ( $verify_result ) { 33 // 認証成功 34 // IDトークンからユーザー識別子を取り出してCookie発行などのログイン処理を行ってください 35 $id_token = $client->getIdToken(); 36 } else { 37 // 認証失敗 38 } 39} catch ( Exception $e ) { 40 // 正しく復号できない等の不正なIDトークンが指定された場合の例外処理 41} 42try { 43 // UserInfo APIにリクエスト 44 $client->requestUserInfo( $access_token ); 45 // 属性情報を取得。必要に応じて登録情報にプリセットしてください 46 print_r( $client->getUserInfo(), true ); 47} catch ( ApiException $e ) { 48 // アクセストークンの更新 49}

回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。