Asp.net web api 客户端MVC中的访问声明(基于令牌的身份验证)
我有基于WebApi的令牌身份验证。将具有声明的令牌发送到MVC客户端。声明在WebApi中是这样注册的Asp.net web api 客户端MVC中的访问声明(基于令牌的身份验证),asp.net-web-api,model-view-controller,Asp.net Web Api,Model View Controller,我有基于WebApi的令牌身份验证。将具有声明的令牌发送到MVC客户端。声明在WebApi中是这样注册的 public override async Task GrantResourceOwnerCredentials(OAuthGrantResourceOwnerCredentialsContext context) { context.OwinContext.Response.Headers.Add("Access-Control-Allow-Origin", n
public override async Task GrantResourceOwnerCredentials(OAuthGrantResourceOwnerCredentialsContext context)
{
context.OwinContext.Response.Headers.Add("Access-Control-Allow-Origin", new[] { "*" });
var identity = new ClaimsIdentity(context.Options.AuthenticationType);
identity.AddClaim(new Claim("userName", context.UserName));
identity.AddClaim(new Claim("role", "user"));
context.Validated(identity);
}
我检查了声明并在WebAPI中注册,但是当MVC请求令牌时,声明丢失了。
这在clinet MVC应用程序中发生:
var ctx = Request.GetOwinContext();
var cl2 = ctx.Authentication.User.Claims; // here there is no claims
相同的代码在WebApi(服务器)中返回正确的声明
我想我做错了什么