使用asp.net获取soundcloud Oauth2令牌

时间:2016-08-12 21:06:38

标签: asp.net oauth2 asp.net-mvc-5

我已成功设法授权我的ASP.NET应用程序/登录第三方服务(在本例中为Soundcloud)。我想要使​​用的API需要在登录过程中提供的授权令牌。我在哪里可以得到令牌?

1 个答案:

答案 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;