天天看點

ASP.NET中如何隐藏Get請求中的參數(APPScan中“SSL請求中的查詢參數“ 的解決方法)

APPScan中:SSL請求中的查詢參數

應公司項目要求,把原本用get傳遞的參數隐藏,也就是在請求的URL中不顯示出各個參數,防止暴露出字段名稱

private static string _searchEmailAddress; //全局變量 使用static


[HttpGet]
[UserAuthorizeAttribute]
public ActionResult Indexx(string searchEmailAddress, int page = 1, int pageSize = Constraints.DefaultPageSize)
{
     _searchEmailAddress = searchEmailAddress;//這裡完成相關全局變量更新;
     return RedirectToAction("Index", "EmailAccount");//注意:該方法是不需要視圖的
}

public ActionResult Index()
{
	//這裡使用全局變量 _searchEmailAddress 進行DB操作;
	return View();//查找資料并傳回
}
           

總結:

1、controller中新增一個中轉方法(Indexx),該方法中将參數記錄給Controller的全局變量,然後請求重定位到另一個不帶參數的方法,并Return View(),

2、在View中必須調用Indexx中轉方法方法,由Indexx方法中轉給實際的Index方法。

3、中轉方法不需要建立相關視圖,它隻是一個中轉方法。

注意:

這種方法其實隻是隐藏了表面而已,實際上并沒有隐藏請求中的參數;

可以将請求改成post,即可隐藏