Google Drive API v3 C# SDK 凭据无效

Google Drive API v3 C# SDK Invalid Credentials

我正在尝试使用 v3 API 在 Google Drive 中上传文件,但我不知道如何获得访问权限。

我已经通过 OAuth2 获得了令牌(我请求授予对 Google 用户驱动器的访问权限并获取令牌)

有我的代码,但我不明白如何放置令牌进行身份验证。

//creazione servizio
var DriveService = new Google.Apis.Drive.v3.DriveService();

//creazione del file
Google.Apis.Drive.v3.Data.File body = new Google.Apis.Drive.v3.Data.File();
body.Name = nome;
body.MimeType = mimeType;

//upload del file
Google.Apis.Drive.v3.FilesResource.CreateMediaUpload request = DriveService.Files.Create(body,file,mimeType);
request.OauthToken = token;
request.Fields = "id";
request.Upload();

Response.Write(request.Upload().Exception.Message);

var returnFile = request.ResponseBody;

if (returnFile != null)
{
    esito.urlFile = returnFile.Id;
    esito.esito = true;
}

在此先感谢大家。

您在 SO post 标题中指出的无效凭据,如果您使用的访问令牌已过期或无效(如 Handling API Errors 中所述),通常会遇到这种情况。

针对此类错误的建议操作是使用 long-lived 刷新令牌刷新访问令牌。如果失败,请按照 Authorizing Your App with Google Drive.

中所述引导用户通过 OAuth 流程

我发现它很有帮助,如果您完成这些教程,您会更好地了解身份验证和上传文件:

  1. Google Drive Authentication C#
  2. Google Drive API with C# .net – Upload

希望这些教程对您有所帮助。 :)