Ho bisogno di usare SpreadsheetsService, ma non trovo il modo nella documentazione ufficiale .net
. https://developers.google.com/google-apps/spreadsheets/?hl=ja#authorizing_requestsCome utilizzare SpreadsheetsService autenticato da ServiceAccountCredential?
ho il mio servizio autenticato:
String serviceAccountEmail = "[email protected]";
var certificate = new X509Certificate2(@"privatekey.p12", "pass", X509KeyStorageFlags.Exportable);
ServiceAccountCredential credential = new ServiceAccountCredential(
new ServiceAccountCredential.Initializer(serviceAccountEmail)
{
Scopes = new[] { DriveService.Scope.Drive }
}.FromCertificate(certificate));
Da qui posso istanziare quasi tutti i servizi.
Per esempio Drive Service:
var service = new DriveService(new BaseClientService.Initializer()
{
HttpClientInitializer = credential,
ApplicationName = "Drive API Sample",
});
Ma con SpreadsheetsService
posso fare questo, perché SpreadsheetsService attendere una stringa 'nome dell'applicazione' nel suo costruttore di default o un GOAuth2RequestFactory nella sua proprietà RequestFactory
.
Come autenticare SpreadsheetsService con un ServiceAccountCredential?
Con Java si ca n uso: spreadsheetService.setHeader ("Autorizzazione", "Portatore" + accessToken); Ma non sono sicuro di .net .... esempio setHeader: http://stackoverflow.com/questions/15084133/issue-with-oauth2-authentication-with-google-spreadsheet/15152682#15152682 – eddyparkinson
Hai trovato la risposta? Sto cercando di fare la stessa cosa, ma SpreadsheetsService supporta solo il nome dell'applicazione come parametro. C'è qualche soluzione che hai usato? setUserCredentials funziona per me se sono solo un utente regolare, non un dominio. – Sergei
Che cos'è _namespace e assembly_ per 'DriveService'? –