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

问题描述 投票:0回答:1

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

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

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

IdentityServer4

我使用了

UseOpenIdConnectAuthentication
中间件,它可能将令牌存储在 cookie 中,但该 cookie 无法从 JavaScript 读取。

如何将访问令牌从 MVC 传递到 JavaScript?我想在 JavaScript 中使用这个令牌来调用 React 的 API。

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

javascript asp.net-mvc reactjs asp.net-core-mvc identityserver4
1个回答
1
投票

从 React 中,您可以调用 MVC 服务器并将令牌返回给 React:

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

        return accessToken;
    }
}
© www.soinside.com 2019 - 2024. All rights reserved.