我正在 ASP.NET Core MVC 和 API 中創建登錄頁面。我獲取資料
{
"UserId": 4,
"userName": "admin",
"EmailId": "[email protected]",
"Password": "123",
"Role": "admin",
"Token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1bmlxdWVfbmFtZSI6IjQiLCJyb2xlIjoiYWRtaW4iLCJodHRwOi8vc2NoZW1hcy5taWNyb3NvZnQuY29tL3dzLzIwMDgvMDYvaWRlbnRpdHkvY2xhaW1zL3ZlcnNpb24iOiJWMy4xIiwibmJmIjoxNjUzODA2NTE4LCJleHAiOjE2NTM5NzkzMTgsImlhdCI6MTY1MzgwNjUxOH0.ogp1MHNrKPvX7P2-nqbHJewOlgS0sSUNcKwADhOeIFc",
"Mobile": null,
"Address": null,
"created_at": "0001-01-01T00:00:00",
"updated_at": "0001-01-01T00:00:00"
}
string data = response.Content.ReadAsStringAsync().Result;
ViewBag.Status = data;
它顯示所有資料。但我只需Token要從該資料中獲取值 - 而不是所有值。
如何只讀取令牌?它應該存盤在會話中。
uj5u.com熱心網友回復:
在 C# 中使用 JSON 的一個好方法是使用JSON.NET
如何使用它的一個例子:
public class Response
{
public Response(string rawResponse)
{
var obj = JObject.Parse(rawResponse);
UserId = int.Parse(obj["UserId"].ToString());
userName = obj["userName"].ToString();
//...
Token = obj["Token"].ToString();
//...
}
public int UserId { get; set; }
public string userName { get; set; }
public string EmailId { get; set; }
public String Password { get; set; }
public string Role { get; set; }
public string Token { get; set; }
// other properties
}
// Use
private void Run()
{
string data = response.Content.ReadAsStringAsync().Result;
Response response = new Response(data );
Console.WriteLine("Token: " response.Token);
}
uj5u.com熱心網友回復:
這是我的代碼。我想在會話中存盤令牌值。我正在使用 API 和 MVC Asp.net 核心。我檢索到資料完整值,但我只需要 Token 值
[HttpPost]
public ActionResult Index(Login model)
{
HttpResponseMessage response = GlobalVariables.WebApiClient.PostAsJsonAsync("Users", model).Result;
IEnumerable<Login> error = null;
if (response.IsSuccessStatusCode)
{
string data = response.Content.ReadAsStringAsync( ).Result;
// Session["TokenNumber"] = data;
}
else
{
error = Enumerable.Empty<Login>();
ModelState.AddModelError(string.Empty, "Server error. Please contact administrator.");
}
return View(model);
}
uj5u.com熱心網友回復:
這取決于您的身份驗證,您使用的是 JWT 嗎?為什么您不在標頭屬性中發送令牌?
如果您將此資料發布到 Index 方法,則該令牌應存在于 model.Token 中,
使用最佳實踐,您需要使用登錄方法來驗證用戶,然后為用戶回傳一個令牌,以便在每個請求的標頭中使用,并使用 AuthorizeAttribute 您應該授權用戶
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/482432.html
下一篇:在Dapper中異步查詢多個結果
