2014-04-07 5 views

답변

7

먼저 당신은 당신이 구성하는 clientid/비밀과 올바른 리디렉션 URI와 응용 프로그램이 있는지 확인해야합니다.

enter image description here

지금까지 당신이 된 ClientID/비밀 키를 얻을 것이다 :

enter image description here

지금은 몇 가지 코드를 작성하는 시간이다 - 내 경우를 위해 그것은 데스크톱 응용 프로그램입니다!

1 단계 - 인증 -

private async static Task<UserCredential> Auth(ClientSecrets clientSecrets) 
{ 
    return await GoogleWebAuthorizationBroker.AuthorizeAsync(clientSecrets, Scopes, "user", CancellationToken.None); 
} 

2 단계 구축 구글에 대한 클라이언트 드라이브 :

private static DriveService GetService(UserCredential credential) 
{ 
    return new DriveService(new BaseClientService.Initializer() 
    { 
     HttpClientInitializer = credential, 
     ApplicationName = "MyApplicationName", 
    }); 
} 

3 단계 - 폴더를 생성 (또는 다른 내용) :

private static string CreateFolder(DriveService service, string folderName) 
{ 
    var file = new File {Title = folderName, MimeType = "application/vnd.google-apps.folder"}; 
    var result = service.Files.Insert(file).Execute(); 
    return result.Id; 
} 

4 단계 - 공유하십시오! 모든 일의

/// <summary> 
/// Share content. Doc link: https://developers.google.com/drive/v2/reference/permissions/insert 
/// </summary> 
private static void Share(DriveService service, string fileId, string value, string type, string role) 
{ 
    var permission = new Permission {Value = value, Type = type, Role = role}; 
    service.Permissions.Insert(permission, fileId).Execute(); 
} 

그리고 마지막으로 사용 :

당신은 당신이 가진 모든 이메일에 대한 루프에서 꽤 똑같은 작성/공유 컨텐츠를 할 수있는 이메일의 목록
static void Main(string[] args) 
{ 
    var ClientId = "MySecredId"; 
    var SecretKey = "MySecretKey"; 

    var Scopes = new[] { DriveService.Scope.DriveFile, DriveService.Scope.Drive }; 

    var secrets = new ClientSecrets { ClientId = ClientId, ClientSecret = SecretKey }; 
    var credentials = Auth(secrets).Result; 

    var service = GetService(credentials); 

    var folderId = CreateFolder(service, "folderName"); 

    Share(service, folderId, "[email protected]", "user", "reader"); 
} 

.

일부 유용한 링크 : Sharing files

Creating files

는 또한
당신은

+0

'DriveService'는 어디에 있습니까? –

+0

'File'과'Permission'도 마찬가지입니다. –

+2

@Endri 모든 Google.Apis.Drive.v2입니다. 해결책을 위해 그 패키지를 설치하십시오. (의존성이 있습니다) – Sergio

4

Google에서 먼저 인증 할 때이 힌트를 수행하는 단계입니다. 작업을 완료하면 원하는 작업을 수행하기 위해 드라이브 API에 액세스 할 수 있습니다. 다음 링크는 필요한 모든 작업을 안내합니다.

1 단계 : (당신은 ASP.NET을 사용하고 귀하의 경우 서버 측) 인증 https://developers.google.com/drive/web/auth/web-server

2 단계 : 폴더 https://developers.google.com/drive/web/folder

만들기 3 단계 : 폴더 공유 https://developers.google.com/drive/web/manage-sharing

2

아래 링크를 참조하십시오. Google 드라이브에서 풀 코스가 있습니다! 모든

https://www.codeschool.com/courses/discover-drive

+1

Ruby에 있습니다. ASP.net + C# 접근법을 찾고 있습니다! –

+0

단순히 html과 자바 스크립트를 사용하면 ASP.net에서 쉽게 변환 할 수 있습니다! –

관련 문제