C# JWT登录验证Web API调用
我有一个MVC web应用程序,它使用JWT令牌对用户进行身份验证。它调用身份验证/登录API来生成和检索令牌。调用API时,“response.IsSuccessStatusCode”成功,状态为200。但是“User.Identity.IsAuthenticated”obj仍然为false,然后在尝试导航时出现4001错误,并获得http错误401状态C# JWT登录验证Web API调用,c#,entity-framework,api,jwt,C#,Entity Framework,Api,Jwt,我有一个MVC web应用程序,它使用JWT令牌对用户进行身份验证。它调用身份验证/登录API来生成和检索令牌。调用API时,“response.IsSuccessStatusCode”成功,状态为200。但是“User.Identity.IsAuthenticated”obj仍然为false,然后在尝试导航时出现4001错误,并获得http错误401状态 using (var client = new HttpClient()) { cl
using (var client = new HttpClient())
{
client.BaseAddress = new Uri("https://localhost:44395/");
client.DefaultRequestHeaders.Accept.Clear();
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
HttpContent content = new StringContent(jsonString, Encoding.UTF8, "application/json");
var response = await client.PostAsJsonAsync("api/Authentication/Authenticate", values);
if (response.IsSuccessStatusCode)
{
Users user = await response.Content.ReadAsAsync<Users>();
//JWT jwt = JsonConvert.DeserializeObject<JWT>(user);
HttpContext.Session.SetString("token", user.Token);
var tokenStr = GenerateJsonWebToken(values);
CurrentUser.UserId = user.UserId;
CurrentUser.FirstName = user.FirstName;
CurrentUser.LastName = user.LastName;
if(User.Identity.IsAuthenticated)
{
}
return RedirectToAction("Profile", "Profile");
}
使用(var-client=new-HttpClient())
{
client.BaseAddress=新Uri(“https://localhost:44395/");
client.DefaultRequestHeaders.Accept.Clear();
client.DefaultRequestHeaders.Accept.Add(新的MediaTypeWithQualityHeaderValue(“应用程序/json”);
HttpContent=newstringcontent(jsonString,Encoding.UTF8,“application/json”);
var response=wait client.PostAsJsonAsync(“api/Authentication/Authenticate”,value);
if(响应。IsSuccessStatusCode)
{
Users user=wait response.Content.ReadAsAsync();
//JWT JWT=JsonConvert.DeserializeObject(用户);
HttpContext.Session.SetString(“token”,user.token);
var tokenStr=GenerateJsonWebToken(值);
CurrentUser.UserId=user.UserId;
CurrentUser.FirstName=user.FirstName;
CurrentUser.LastName=user.LastName;
if(User.Identity.IsAuthenticated)
{
}
返回重定向操作(“配置文件”、“配置文件”);
}