【问题标题】:Insufficient Permission [403] error while modifying the Message Label using gmail API in c#在 c# 中使用 gmail API 修改消息标签时权限不足 [403] 错误
【发布时间】:2023-03-13 05:22:01
【问题描述】:

我正在尝试使用 gmail api 阅读 gmail 邮件消息,并且在阅读邮件后,我正在删除消息标签,因此我不需要再次处理它。我能够成功阅读邮件,但是当我尝试修改邮件标签时
(service.Users.Messages.Modify(mods, userId, messageId).Execute();)

然后我收到错误消息:

发生错误:Google.Apis.Requests.RequestError
权限不足 [403]
错误 [
消息[权限不足] 位置[ - ] 原因[insufficientPermis
sions] 域[全局]>
]。

我无法弄清楚,可能出了什么问题? 提前致谢。

【问题讨论】:

  • 您需要在您的范围内使用https://mail.google.com/https://www.googleapis.com/auth/gmail.modify 才能修改消息。你有吗?
  • 我不明白你。你能详细说明一下吗
  • 当然!显示所有相关的 c#-code :) 仅从错误消息很难判断出什么是错误的。
  • 我找到了根本原因。我已将权限范围设为 GmailReadOnly。它的访问级别应为 GmailModify

标签: c# gmail-api


【解决方案1】:

您需要将权限添加到范围变量和 然后删除文件 storedCredentials (C:\Users\Administrateur.credentials.. )

【讨论】:

  • 它帮助我解决了我的问题。不知道范围保存在凭据文件中。谢谢你的帮助。
【解决方案2】:

我在使用服务帐户 API 密钥的控制台应用程序中遇到了类似的问题。添加所有必要的范围后,如上面Tholle 所述,必须在 Google 管理控制台中使用必要的权限更新应用程序。为此,请确保您转到管理控制台并删除当前应用并再次执行该程序以获取具有更新范围的新权限的新令牌。

实现相同目的的另一种方法是执行上面提到的Mohamed。即从“...User\[UserName]\.credetials\[apiCredentialName].json”文件夹中删除JSON文件。这将强制应用程序进行身份验证并获取新令牌。希望这对某人有所帮助:-)

【讨论】:

    【解决方案3】:

    我通过更改 Scopes 变量解决了这个问题。我假设您从仅允许只读访问的 QuickStart 模板开始。您可以按如下方式更改范围:

    using Google.Apis.Gmail.v1.Data;
    using Google.Apis.Services;
    using Google.Apis.Util.Store;
    using System;
    using System.Collections.Generic;
    using System.IO;
    using System.Linq;
    using System.Text;
    using System.Threading;
    using System.Threading.Tasks;
    
    namespace GmailQuickstart
    {
        class Program
        {
            // CHANGE YOUR SCOPE HERE AND DELETE YOUR CREDENTIALS.JSON FILE IN THE PROJECT.
            static string[] Scopes = { GmailService.Scope.GmailReadonly, GmailService.Scope.GmailModify };
            static string ApplicationName = "Gmail API .NET Quickstart";
    

    提醒:更改范围并删除您的credentials.json后,请再次从gmail api重新验证您的访问权限。

    希望对你有用!

    【讨论】:

      猜你喜欢
      • 2019-08-16
      • 1970-01-01
      • 2015-12-26
      • 2021-01-18
      • 2021-07-11
      • 2017-04-24
      • 2015-08-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多