当前位置: 首页 > 知识库问答 >
问题:

Google Sheets Api请求的身份验证范围不足

陶柏
2023-03-14
static string[] Scopes = { SheetsService.Scope.Spreadsheets };
static string ApplicationName = "Google Sheets API .NET Quickstart";
public String spreadsheetId;
SheetsService service;

public GoogleHandler(String id)
{
    spreadsheetId = id;
    UserCredential credential;
    using (var stream =
            new FileStream(@"bin\client_secret.json", FileMode.Open, FileAccess.Read))
    {
        string credPath = System.Environment.GetFolderPath(
            System.Environment.SpecialFolder.Personal);
        credPath = Path.Combine(credPath, ".credentials/sheets.googleapis.com-dotnet-quickstart.json");

        credential = GoogleWebAuthorizationBroker.AuthorizeAsync(
            GoogleClientSecrets.Load(stream).Secrets,
            Scopes,
            "user",
            CancellationToken.None,
            new FileDataStore(credPath, true)).Result;
    }

    service = new SheetsService(new BaseClientService.Initializer()
    {
        HttpClientInitializer = credential,
        ApplicationName = ApplicationName,
    });
}

这是我为Google Sheets API编写的代码。我有static string[]Scopes={sheetsservice.scope.spreadsheets};这是我找到的解决此问题的方法,但这并不能解决我的问题。我已经删除了我的.Credentials文件夹,它不提示我登录。

共有1个答案

百里秋月
2023-03-14
credential = GoogleWebAuthorizationBroker.AuthorizeAsync(
            GoogleClientSecrets.Load(stream).Secrets,
            Scopes,
            "user",
            CancellationToken.None
            //new FileDataStore(credPath, true)
            ).Result;

我把这句话删掉了,一切都好了!

 类似资料:
  • 我第一次尝试使用Google Firestore,通过Google api身份验证进行身份验证。我要做的第一件事是用几个方法来填充数据库,当我等待批处理任务时,会出现以下错误: 我几乎找不到谷歌认证连接firestore的方法。首先,我使用google console为我的应用程序提供的密码使用此方法进行身份验证: 使用在我的google控制台中为应用程序配置的相同作用域(我在同一应用程序中使用g

  • null 所用程序: 获取身份验证响应后创建Google analytics service对象。/li> 脚本: null

  • 我是新来的,我不是程序员,那我需要你的帮助。 我正在测试说明管理老师和学生在这里找到:https://developers.google.com/classroom/guides/manage-users 我尝试使用身份验证和作用域,就像在PHP QuickStart中一样:https://developers.google.com/classroom/quickstart/php 我成功运行了q

  • 我正试着从我的swift项目中写到谷歌表单。 现在,我遇到的问题是,当我运行该代码试图写入工作表时,我得到的响应是这样的(工作表ID被我故意删除了): 在进一步研究中,我还发现了这一点,我认为这将解决我的问题,但当我尝试添加时,它告诉我中找不到'kGTLRAuthScopeSheetsSpreadsheets'。 我觉得在这一点上,我被困在我下一步可以尝试的东西上了。如有任何建议,不胜感激!

  • 问题内容: 我正在使用nodejs上的以下脚本编写脚本以从Google电子表格读取数据: 但是在每个获取请求时,我都会收到此错误: 我检查了Google开发人员控制台以启用Google Drive API并启用了它,所以我真的不知道这可能是什么。 问题答案: 首先删除凭据文件(取决于您的设置) 从更改用于从Google Spreadsheets读取单元格的作用域变量 var SCOPES = [‘