如何检索Program.cs中返回的访问令牌以在Startup.cs中可用?

时间:2019-07-06 19:59:43

标签: c# asp.net asp.net-core asp.net-web-api

我正在使用第三方API,该API要求我获取访问令牌,以在每个请求中与Authorization标头一起发送。由于向此API发送调用是应用程序不可或缺的一部分,因此我想在应用程序启动后立即获取访问令牌。我在Program.cs文件中有一个在GetToken中运行的Main()异步方法的代码,该方法将调用授权端点并返回访问令牌。

我的麻烦在于,在Startup.cs中,我有一个AddHttpClient()方法链接到我的services方法中的ConfigureServices()中,该方法设置了HTTP客户端,我需要将访问令牌添加到身份验证标头中。我的方法完全不可行吗?我不完全确定从这里去哪里。

1 个答案:

答案 0 :(得分:0)

为什么不在您的StartUp类内进行Auth调用,并将其传递给您的AddHttpClient()方法。您可以在那里等待GetToken(),因为返回的令牌对于所有HttpClient来说都是不可或缺的,可以将其用作标头。从理论上讲,将其放入Program.csStartup.cs

内应该花费完全相同的时间