2017-07-18 29 views
0

私は学生で、プロジェクトの割り当てでCドライブを使用してGoogleドライブをウェブサイトに実装していました。今度はVisual Studio 2015でテストします。私のVSからサイトを起動すると、認証されたGoogleドライブが起動します。認証に成功しましたが、ドライブにファイルをアップロードできますが、認証タブは閉じられません。以下は私のコードです。Googleドライブの認証タブが閉じない

Default.aspx.cs

using System; 
using System.IO; 
using System.Web.UI; 

public partial class _Default : Page 
{ 
    protected void Page_Load(object sender, EventArgs e) 
    { 
    var service = GoogleDriveHelper.AuthenticateOauth(); 
    } 
} 

GoogleDriveHelper.cs

using Google.Apis.Auth.OAuth2; 
using Google.Apis.Drive.v3; 
using Google.Apis.Services; 
using Google.Apis.Util.Store; 
using System; 
using System.Collections.Generic; 
using System.IO; 
using System.Threading; 

public class GoogleDriveHelper 
{ 
    public static DriveService AuthenticateOauth() 
    { 
    string[] scopes = new string[] { DriveService.Scope.Drive, 
            DriveService.Scope.DriveFile }; 

    try 
    { 
     string credPath = System.Environment.GetFolderPath(System.Environment.SpecialFolder.Personal); 
       credPath = Path.Combine(credPath, ".credentials/", System.Reflection.Assembly.GetExecutingAssembly().GetName().Name); 

     UserCredential credential = GoogleWebAuthorizationBroker.AuthorizeAsync(
            new ClientSecrets {       
             ClientId = "My-client-id",                      
             ClientSecret = "My-client-secret"    
            },          
            scopes,         
            "Users",                  
            CancellationToken.None,     
            new FileDataStore(credPath, true)).Result; 

     DriveService service = new DriveService(new BaseClientService.Initializer() { 
      HttpClientInitializer = credential, 
      ApplicationName = "Google Drive API Demo", 
     }); 

     return service; 
    } 
    catch 
    { 
     return null; 
    } 
} 

これが成功し、Googleのドライブを認証した後、私の認証タブです。問題は、認証後に終了しなかったことです。

http://127.0.0.1:54972/authorize/?code=4/mbNAx__wjbnjsH6xJFtsgp3V6bDoweKrI8psJPaZd5E# 

Non stop loading auth tab

だからここに私が解決しようとする問題である:認証後

  1. オートクローズ認証グーグルタブ。
  2. IISでこのサイトを展開すると別のエラーが発生し、認証に失敗しました。

    エラー:redirect_uri_mismatch事前に

みんなありがとう。

答えて

0

GoogleデベロッパーコンソールAPIにアクセスし、OAuthクライアントIDにクライアントIDを使用するURIを指定することで解決できます。

/oauth2callbackでURI 認定Javascriptの起源ウェブサイト( www.mywebsiteexample.com)のURIの下と 認定リダイレクトURIをの下に指定してください。

enter image description here

+0

このoauth2callbackを作成する必要はありますか?これはGoogle自体からですか? – saf21

関連する問題