【问题标题】:Redirect users to authorization URL with request parameters使用请求参数将用户重定向到授权 URL
【发布时间】:2017-08-23 23:10:29
【问题描述】:

我正在尝试使用来自我的站点内的请求参数将我的 Web 应用程序的用户重定向到授权端点(第三方)。我使用 asp.net core 作为我的技术平台。

我是在中间件管道内还是在 api/mvc 控制器中做这种事情?

现在我正在尝试在控制器内部进行操作。我可以创建一个电话并取回响应,但我真的不认为我应该呈现他们的响应。这是我的代码:

        HttpClient client = new HttpClient();
        var values = new List<KeyValuePair<string, string>>();
        values.Add(new KeyValuePair<string, string>("client_id", "somevalue"));
        values.Add(new KeyValuePair<string, string>("scope", "somescope"));
        values.Add(new KeyValuePair<string, string>("state", "fizzbuzz"));
        var content = new FormUrlEncodedContent(values);
        var response = await client.PostAsync(authorizeEndPoint, content);

我在这里不知所措,由于某种原因无法解决解决方案。我应该如何重定向我的用户以获得第三方的授权?

谢谢

【问题讨论】:

    标签: c# asp.net redirect asp.net-core oauth-2.0


    【解决方案1】:

    所以我可以通过将我的 ActionResult 更改为 void 并在我的操作中添加来让它工作

       [HttpGet]
        public  void Index()
        {
            Response.Redirect("url?client_id=value&scope=value&state=value");
        }
    

    我仍然不确定这是否是正确的做法,或者我是否应该在中间件内部处理重定向。我不确定,但这有效,但对吗?希望这对将来的其他人有所帮助,我希望有人可以验证这是否正确。

    【讨论】:

      猜你喜欢
      • 2014-04-08
      • 2013-11-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-12-27
      • 2020-09-16
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多