E-posta listemiz var.Google Drive klasörlerini dinamik olarak oluşturun ve paylaşın
Her e-posta için bir Google Drive klasörü oluşturmalı ve belirtilen e-posta ile paylaşmalıyım.
Programlı olarak nasıl yapabilirim?
ASP.NET 4.0 kullanıyorum.
E-posta listemiz var.Google Drive klasörlerini dinamik olarak oluşturun ve paylaşın
Her e-posta için bir Google Drive klasörü oluşturmalı ve belirtilen e-posta ile paylaşmalıyım.
Programlı olarak nasıl yapabilirim?
ASP.NET 4.0 kullanıyorum.
Önce yapılandırmaya dikkat clientid/gizli ve doğru yönlendirme uri ile uygulamaya sahip olmak gerekir.
Şu ana kadar clientId/gizli anahtar alırsınız:
Şimdi bazı kodları yazmak için zamanı - benim durumumda için bu bir masaüstü uygulaması var!
Adım 1 - yetkilendirme: -
private async static Task<UserCredential> Auth(ClientSecrets clientSecrets)
{
return await GoogleWebAuthorizationBroker.AuthorizeAsync(clientSecrets, Scopes, "user", CancellationToken.None);
}
Adım 2 inşa google için istemci sürücü:
private static DriveService GetService(UserCredential credential)
{
return new DriveService(new BaseClientService.Initializer()
{
HttpClientInitializer = credential,
ApplicationName = "MyApplicationName",
});
}
Adım 3 - klasör oluşturmak (veya başka bir içerik):
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;
}
Adım 4 - Paylaşın! Bütün bunların
/// <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();
}
Ve nihayet kullanımı:
sahip olduğunuz her e-posta için bir döngü içinde oldukça aynı şey yaratma/paylaşım içeriği yapabileceği e-postaların listesi içinstatic 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");
}
.
Bazı yararl linkler: Sharing files
Ayrıca Sen
'DriveService' nerede bulunur? –
Aynı şey "Dosya" ve "İzin" için de geçerlidir. –
@Endri, hepsi Google.Apis.Drive.v2. Çözümü için paketi yükleyin (bağımlılıklara sahiptir) – Sergio
Bu menteşeyi Google ile kimlik doğrulaması yapmaya yönelik adımlar. Bunu yaptıktan sonra, istediğiniz işlemleri gerçekleştirmek için Drive API'sına erişebileceksiniz. Aşağıdaki linkler, yapmanız gereken her şeyde size yol gösterir.
Adım 1: (eğer ASP.NET kullandığınız olarak sizin durumunuzda sunucu tarafı) kimlik doğrulaması https://developers.google.com/drive/web/auth/web-server
2. Adım: klasörleri https://developers.google.com/drive/web/folder
Adım 3 oluşturun: klasörleri paylaşma https://developers.google.com/drive/web/manage-sharing
Aşağıdaki linke bir göz atın. Google Drive'da tam ders var! Her şeyden
Ruby'de. ASP.net + C# Yaklaşımı arıyorum! –
onun html ve java script ile kolayca ve kolayca ASP.net içinde dönüştürebilirsiniz! –
Google'a bunu paketlemek Nuget Google.Apis.Drive.v2 gerekir. https://developers.google.com/drive/v2/reference/ –