You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
abp/modules/openiddict/app/OpenIddict.Demo.Client.Mvc/Pages/Index.cshtml

69 lines
2.4 KiB

@page
@using Microsoft.AspNetCore.Authentication
@using System.Net.Http.Headers
@using System.Text.Json
@model IndexModel
@{
ViewData["Title"] = "Home page";
}
<div class="text-center">
<a class="btn btn-primary" href="/Login">Login</a>
<a class="btn btn-warning" href="/Logout">Logout</a>
@if (HttpContext.User.Identity != null && HttpContext.User.Identity.IsAuthenticated)
{
<ul class="list-group mt-3 text-start">
@foreach (var claim in HttpContext.User.Claims)
{
<li class="list-group-item">@claim.Type : @claim.Value</li>
}
</ul>
<p>HttpContext.GetTokenAsync("access_token")
<br/>
@await HttpContext.GetTokenAsync("access_token")
</p>
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Get, "https://localhost:44303/api/claims");
request.Headers.Authorization = new AuthenticationHeaderValue("Bearer", await HttpContext.GetTokenAsync("access_token"));
var response = await client.SendAsync(request);
<code style="display: block; white-space: pre-wrap; text-align: left">
@{
var apiResponse = response.StatusCode.ToString();
if (response.IsSuccessStatusCode)
{
apiResponse = JsonSerializer.Serialize(JsonDocument.Parse(await response.Content.ReadAsStringAsync()), new JsonSerializerOptions
{
WriteIndented = true
});
}
}
@apiResponse;
</code>
request = new HttpRequestMessage(HttpMethod.Get, "https://localhost:44301/api/claims");
request.Headers.Authorization = new AuthenticationHeaderValue("Bearer", await HttpContext.GetTokenAsync("access_token"));
response = await client.SendAsync(request);
<code style="display: block; white-space: pre-wrap; text-align: left">
@{
apiResponse = response.StatusCode.ToString();
if (response.IsSuccessStatusCode)
{
apiResponse = JsonSerializer.Serialize(JsonDocument.Parse(await response.Content.ReadAsStringAsync()), new JsonSerializerOptions
{
WriteIndented = true
});
}
}
@apiResponse;
</code>
}
</div>