ASP.NET Web API谷歌OAuth一直返回“访问被拒绝”。
创始人
2024-09-16 22:30:11
0

在ASP.NET Web API中使用Google OAuth时,如果一直返回“访问被拒绝”错误,可能是由于以下一些原因:

  1. 未正确配置OAuth客户端凭据。请确保您在Google开发者控制台中创建了正确的OAuth客户端凭据,并将其配置到Web API项目中。您需要提供正确的客户端ID和客户端密钥。

  2. 未正确配置重定向URI。请确保您在Google开发者控制台中配置了正确的重定向URI。这个URI应该是指向您Web API项目中用于接收Google授权码的端点。

  3. 授权码无效或已过期。当您从Google获取授权码时,它有一个有效期限。如果您尝试使用一个无效或已过期的授权码进行身份验证,将会返回“访问被拒绝”错误。您可以尝试重新获取一个新的授权码。

下面是一个示例代码,演示了如何在ASP.NET Web API项目中使用Google OAuth:

public class OAuthController : ApiController
{
    private const string ClientId = "YOUR_CLIENT_ID";
    private const string ClientSecret = "YOUR_CLIENT_SECRET";
    private const string RedirectUri = "YOUR_REDIRECT_URI";

    [HttpGet]
    [Route("oauth/google")]
    public IHttpActionResult GoogleAuth()
    {
        var authUrl = $"https://accounts.google.com/o/oauth2/auth?client_id={ClientId}&redirect_uri={RedirectUri}&response_type=code&scope=email%20profile";
        return Redirect(authUrl);
    }

    [HttpGet]
    [Route("oauth/google/callback")]
    public async Task GoogleCallback(string code)
    {
        var tokenUrl = "https://accounts.google.com/o/oauth2/token";
        var client = new HttpClient();

        var content = new FormUrlEncodedContent(new[]
        {
            new KeyValuePair("code", code),
            new KeyValuePair("client_id", ClientId),
            new KeyValuePair("client_secret", ClientSecret),
            new KeyValuePair("redirect_uri", RedirectUri),
            new KeyValuePair("grant_type", "authorization_code")
        });

        var response = await client.PostAsync(tokenUrl, content);
        var responseJson = await response.Content.ReadAsStringAsync();

        // Process the response and authenticate the user

        return Ok();
    }
}

请注意,上述代码中的常量YOUR_CLIENT_IDYOUR_CLIENT_SECRETYOUR_REDIRECT_URI需要替换为您在Google开发者控制台中创建的OAuth客户端凭据的相应值。

希望这个示例代码能帮助您解决ASP.NET Web API中Google OAuth返回“访问被拒绝”错误的问题。

相关内容

热门资讯

实测交流"哈局八张透... 实测交流"哈局八张透视辅助"开挂(脚本)辅助脚本有挂攻略-新2026版这是一款可以让一直输的玩家,快...
指导大家"奇迹陕西靖... 大家好,今天小编来为大家解答奇迹陕西靖边打锅子辅助这个问题咨询软件客服可以免费测试直接加微信(136...
透视科技"多乐找刺激... 多乐找刺激脚本辅助是一款可以让一直输的玩家,快速成为一个“必胜”的ai辅助神器,有需要的用户可以加我...
透视中牌率"蜀渝牌乐... 透视中牌率"蜀渝牌乐汇修改器"开挂(神器)辅助神器有挂方略-透牌教程 >>您好:软件加薇136704...
重大推荐"约战丹东苹... 重大推荐"约战丹东苹果辅助"开挂(平台)辅助平台的确有挂-2026新版总结;无需打开直接搜索加薇13...
总算了解"闲玩暗宝辅... 总算了解"闲玩暗宝辅助软件"开挂(插件)辅助插件有挂头条-安装教程 >>您好:软件加薇1367043...
推荐一款"唯思竞技修... 推荐一款"唯思竞技修改器"开挂(安装)辅助安装有挂规律-爆料教程;亲,唯思竞技修改器这款游戏原来确实...
透视讲解"安装胡乐辅... 透视讲解"安装胡乐辅助脚本"开挂(软件)辅助软件有挂秘籍-线上教程;无需打开直接搜索打开薇:1367...
透视模拟器"天天卡五... 透视模拟器"天天卡五星攻略"开挂(脚本)辅助脚本证实有挂-线上教程1、下载安装好天天卡五星攻略,进入...
透视实锤"爱来掌中宝... 大家好,今天小编来为大家解答爱来掌中宝有没有挂这个问题咨询软件客服可以免费测试直接加微信(13670...