如何在执行ouath2授权请求后重定向到登录页面



祝你今天愉快。我是C#和OAuth的新手。我正在尝试使用RestSharp在Blazor中实现OAuth2。我有以下代码:

@page"/influfonsoft"@使用System.Globalization

输液器

请求身份验证

@code {
@using RestSharp;
@using RestSharp.Authenticators;
@using Newtonsoft.Json;
public void Foo1()
{
string url = "https://signin.infusionsoft.com/app/oauth/authorize";
string client_id = "myid";
string client_secret = "mysecret";
//request token
var restclient = new RestClient(url);
RestRequest request = new RestRequest("request/oauth") { Method = Method.POST };
request.AddHeader("Accept", "application/json");
request.AddHeader("Content-Type", "application/x-www-form-urlencoded");
request.AddParameter("client_id", client_id);
request.AddParameter("client_secret", client_secret);
request.AddParameter("grant_type", "authorization_code");//+
IRestResponse tResponse = restclient.Execute(request);
Console.WriteLine(tResponse.Content);

}

}

它本应该将我的应用程序重定向到登录页面,但现在它什么都没做。我试过谷歌,但我仍然没有得到它:(。此外,一旦我获得授权,我如何开始调用api。非常感谢任何示例代码。谢谢。

您应该通过发送HTTP状态代码302,然后在重定向URL中指定身份验证服务器URL和查询参数。

我对您使用的东西并不太熟悉,但据我所知,您实际上根本没有重定向。

您使用RestSharp将POST请求发送到OAuth URL,该URL不重定向用户,而只是从应用程序发送请求并将响应保存在tResponse中。

您似乎需要使用IUriHelper#NavigateTo(url)重定向到OAuth页面。您可以使用@inject IUriHelper uriHelper注入它,然后用它的参数构建URL,然后将其传递给uriHelper.NavigateTo(url)。希望这能有所帮助。

链接:

使用参数在blazor中重定向

https://medium.com/cloudnimble/redirects-in-blazor-apps-75b3f4709d57

相关内容

  • 没有找到相关文章

最新更新