簡體   English   中英

如何使用 MVC 隱藏 url 中的請求參數字段?

[英]How can i hide the Request parameter fields in url using MVC?

我正在使用以下內容重定向並調用 api: 在我的操作方法中,我有以下內容:

        if (token != null)
        {            
           return Content($"https://localhost:1234/user/UserTokenLogin?token={myToken}");
        }

現在我可以在 url 中看到令牌。 有沒有辦法可以隱藏此參數字段但仍將其提取到目標 api 上?

您需要應用編碼/解碼程序。 我會給你一個 Base64 編碼的例子,但如果你願意,你可以找到更安全的算法。

public string Encode(string strToEncode)
{
    byte[] encodedVal = System.Text.Encoding.UTF8.GetBytes(strToEncode);
    return Convert.ToBase64String(encodedVal);
}

public string Decode(string strToDecode)
{
    byte[] decodedVal = Convert.FromBase64String(strToDecode);
    return System.Text.Encoding.UTF8.GetString(decodedVal);
}

然后你可以如下應用它。

if (token != null)
{  
  var encodedToken = Encode(myToken);          
  return Content($"https://localhost:1234/user/UserTokenLogin?token={encodedToken}");
}

public ActionResult UserTokenLogin(string token){
     var decodedToken = Decode(token);

     //do other stuff.
}

您可以使用 header 參數。 它通常用於 header。

Response.Headers.Add("AuthToken", "token");

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM