Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/96.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net web api 客户端MVC中的访问声明(基于令牌的身份验证)_Asp.net Web Api_Model View Controller - Fatal编程技术网

Asp.net web api 客户端MVC中的访问声明(基于令牌的身份验证)

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

我有基于WebApi的令牌身份验证。将具有声明的令牌发送到MVC客户端。声明在WebApi中是这样注册的

 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(服务器)中返回正确的声明 我想我做错了什么