【问题标题】:Email Settings API Auth2.0 Update Signature电子邮件设置 API Auth2.0 更新签名
【发布时间】:2023-03-28 06:04:01
【问题描述】:

我哪里错了?当我尝试 URL 时,它说:“缺少必需的参数:response_type”。我需要添加什么才能让这个东西工作?如果你能提供一个简单的解释那就太好了。

string client_ID = "XXXXXXX";
        string client_Secret = "XXXXXXXXXXX";
        string scope = "https://apps-apis.google.com/a/feeds/emailsettings/2.0/workwearoutlet.co.uk/zak.baig/signature";
        string redirect_URI = "urn:ietf:wg:oauth:2.0:oob";

        // Prepare OAuth parameters
        OAuth2Parameters parameters = new OAuth2Parameters();

        parameters.ClientId = client_ID;
        parameters.ClientSecret = client_Secret;
        parameters.Scope = scope;
        parameters.RedirectUri = redirect_URI;

        string applicationName = "signature";
        string domain = "workwearoutlet.co.uk";

        // Request authorization from the user
        string authorizationURL = OAuthUtil.CreateOAuth2AuthorizationUrl(parameters);
        Console.WriteLine(authorizationURL);
        Console.WriteLine("Please visit the URL above to authorize your OAuth " +
            "request token. Once that is complete, type in your access code to " +
            "continue...");
        parameters.AccessCode = Console.ReadLine();

        OAuthUtil.GetAccessToken(parameters);
        string accessToken = parameters.AccessToken;
        Console.WriteLine("OAuth Access Token: " + accessToken);

        try
        {
            // Create a new request factory so it uses our OAuth credentials
            GOAuth2RequestFactory requestFactory = new GOAuth2RequestFactory("apps", applicationName, parameters);

            GoogleMailSettingsService service = new GoogleMailSettingsService(domain, applicationName);
            service.RequestFactory = requestFactory;

            // Update the signature for the user testUserName
            service.UpdateSignature("zak.baig@workwearoutlet.co.uk", "My tiny signature");

            Console.WriteLine(service.RetrieveSignature("zak.baig@workwearoutlet.co.uk"));
        }

        catch (AppsException a)
        {
            Console.WriteLine("A Google Apps error occurred.");
            Console.WriteLine();
            Console.WriteLine("Error code: {0}", a.ErrorCode);
            Console.WriteLine("Invalid input: {0}", a.InvalidInput);
            Console.WriteLine("Reason: {0}", a.Reason);
        }

【问题讨论】:

    标签: c# api gmail


    【解决方案1】:

    我相信这最好使用 PHP OAuth2 API 来实现。

    这消除了编写糟糕的 C# API 调用函数的所有问题。

    另外,你试过搜索功能吗?我已经找到了多个解决此问题的方法。

    【讨论】:

    • 请不要提及那种糟糕的语言。为什么人们仍然使用 PHP 超出了我的理解。
    • @Zak Ha!这些天人们如此无知,认为 C# 在基于 Web 的世界中仍然相关。对这部讽刺作品笑得很开心,谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-26
    • 1970-01-01
    • 1970-01-01
    • 2018-07-24
    相关资源
    最近更新 更多