我已成功设法授权我的ASP.NET应用程序/登录第三方服务(在本例中为Soundcloud)。我想要使用的API需要在登录过程中提供的授权令牌。我在哪里可以得到令牌?
答案 0 :(得分:0)
我找到了答案以防其他人想知道,通过使用选项中的Provider属性可以获得令牌。在这种情况下,我使用令牌设置了一个声明,然后我可以在SignInManager的声明属性中访问.AuthenticationManager.GetExternalLoginInfo()
app.UseSoundCloudAuthentication(new SoundCloudAuthenticationOptions
{
ClientId = "CLIENT_ID",
ClientSecret = "CLIENT_SECRET",
Provider = new Owin.Security.Providers.SoundCloud.Provider.SoundCloudAuthenticationProvider
{
OnAuthenticated = async context =>
{
context.Identity.AddClaim(new Claim("AccessToken", context.AccessToken));
await Task.Yield();
}
}
});
var accessToken = info.ExternalIdentity.Claims.Single(x => x.Type == "AccessToken").Value;