Aurelia 的 Oauth2 托管在 asp .net 核心中

Posted

技术标签:

【中文标题】Aurelia 的 Oauth2 托管在 asp .net 核心中【英文标题】:Oauth2 for Aurelia hosted in asp .net core 【发布时间】:2018-04-02 12:58:03 【问题描述】:

我的设置是:

托管 Aurelia 应用程序的 aspnet 核心站点 aspnet核心api

我可以轻松配置托管 asp 核心站点以使用 oauth2 进行身份验证。

如何将令牌传递给托管的 Aurelia 应用程序,以便将其用于对 api 的请求?

【问题讨论】:

【参考方案1】:

编辑: 使用标准流程获取 OAuth 令牌:On a high level, how does OAuth 2 work?

作为 API 调用的结果,将其传递给 Aurelia 客户端以登录,或者其他。理想情况下,应该通过 https 完成。

原点: 您需要在请求中添加Authorization 标头。

(假设您使用的是Aurelia-Fetch-Client

大概,你有一个不记名令牌,所以标头可以这样配置:

httpClient.configure(config => 
  config
    .withBaseUrl('api/')
    .withDefaults(
      credentials: 'same-origin',
      headers: 
        'Accept': 'application/json',
        'X-Requested-With': 'Fetch',
        'Authorization': `Bearer $getTokenFromLocalStore()`
      
    )

getTokenFromLocalStore 是您的函数,它返回您之前检索到的令牌。

【讨论】:

确实如此,但我首先如何获得这个令牌?我不关心这里的数据流。

以上是关于Aurelia 的 Oauth2 托管在 asp .net 核心中的主要内容,如果未能解决你的问题,请参考以下文章

Aurelia + Asp.net Web Api + Typescript + JSPM

是否可以在非水疗应用程序中使用 Aurelia?

在ASP.NET中实现OAuth2.0之了解OAuth

如何在 Asp.net MVC 中编写 OAuth2 Web API 客户端

如何在 ASP.NET MVC 5 和 WEB API 2 中实现 oauth2 服务器 [关闭]

在 ServiceFabric 中托管旧版 ASP.NET(不是 ASP.NET Core)