前提・実現したいこと
Googleログイン完了後の画面遷移ができません。
発生している問題・エラーメッセージ
Google Cloud Platformで承認済みのリダイレクトURIは以下の通りになっており、
リダイレクトURI=ログイン後に遷移する画面のURLという認識なのですが、
例えば承認済みのリダイレクトURIを「https://localhost:5001/Home/Privacy」としても、
「https://localhost:5001/Home/Privacy」には遷移しません。
該当のソースコード
HomePage
1@{ 2 ViewData["Title"] = "Home Page"; 3} 4 5<html lang="en"> 6<head> 7 <meta name="google-signin-scope" content="profile email"> 8 <meta name="google-signin-client_id" content="327764760783-rfgj8ft9gu5rppifn2r3fk7vjaar9njo.apps.googleusercontent.com"> 9 <script src="https://apis.google.com/js/platform.js" async defer></script> 10</head> 11<body> 12 <div class="g-signin2" data-onsuccess="onSignIn" data-theme="dark"></div> 13 <script>function onSignIn(googleUser) { 14 // Useful data for your client-side scripts: 15 var profile = googleUser.getBasicProfile(); 16 console.log("ID: " + profile.getId()); // Don't send this directly to your server! 17 console.log('Full Name: ' + profile.getName()); 18 console.log('Given Name: ' + profile.getGivenName()); 19 console.log('Family Name: ' + profile.getFamilyName()); 20 console.log("Image URL: " + profile.getImageUrl()); 21 console.log("Email: " + profile.getEmail()); 22 23 // The ID token you need to pass to your backend: 24 var id_token = googleUser.getAuthResponse().id_token; 25 console.log("ID Token: " + id_token); 26 }</script> 27 28 <a href="#" onclick="signOut();">Sign out</a> 29 <script>function signOut() { 30 var auth2 = gapi.auth2.getAuthInstance(); 31 auth2.signOut().then(function () { 32 console.log('User signed out.'); 33 }); 34 }</script> 35 36</body> 37</html>
サイトの操作手順
手順③:ログイン後はログインボタンのテキストが「Singed in」に変わり、
ログインボタン下の「Sign out」ボタンをクリックすれば最初の画面に戻ります。
試したこと
発生している問題のところにも記載しましたが、
リダイレクトURIを「https://localhost:5001/Home/Privacy」としても、
手順②でアカウント選択後に「https://localhost:5001/Home/Privacy」には遷移しません。
そもそもリダイレクトURIの認識が違うのでしょうか、、
補足情報(FW/ツールのバージョンなど)
VisualStudio for Mac
参考サイトURL
・[公式]Web サーバー アプリケーションでの OAuth 2.0 の使用
・[公式]OAuth 2.0
・[公式]GoogleAPIのOAuth2.0スコープ一覧
・Google API Client Library for .NETの使い方
・C#を使用してGoogleサービスアカウントのアクセストークンを取得する
・c# - Web Api OAuthでアクセストークンを取得するにはどうすればよいですか?
・RESTAPIを使用したGoogleOAuth認証
・OAuth 2.0 の解説サイトを漁る前に
・コンソールからGoogle OAuth2の認証を行う
・OAuthとAPIキー、アクセスするデータの種類とAPIの認証方法の関係
・Google API の Access Token を手動で取得する
回答1件
あなたの回答
tips
プレビュー