如何在 MVC 应用程序中使用 JWT,其中一些 javascript 部分使用 IdentityServer4

How work with JWT in MVC application where is some javascript part using IdentityServer4

我有 Asp.Net MVC Core 应用程序,里面是 React javascript 应用程序。

我想在 MVC 部分和 React javascript 部分之间共享访问令牌。

我使用隐式流 IdentityServer4 生成访问令牌。

我使用了 UseOpenIdConnectAuthentication 中间件,它可能将令牌存储在 cookie 中,但此 cookie 无法从 javascript 读取。

如何将访问令牌从 MVC 传递到 javascript? 我想在 javasript 中使用此令牌从 React 调用和 API。

最后我想将令牌存储在 MVC 的 cookie 中(没关系)和本地存储中的 React 部分 - 但我不知道如何将令牌从 MVC 发送到 React。

感谢任何分数。

从 React,您可以调用您的 MVC 服务器和 return React 的令牌:

public class SomeController : Controller
{
    [Authorize]
    public async Task<String> GetAccessToken()
    {
        var accessToken = await HttpContext.Authentication.GetTokenAsync("access_token");

        return accessToken;
    }
}