簡體   English   中英

如何加密 id 查詢字符串參數

[英]How can I encrypt the id querystring parameter

我需要發送帶有加密的“@id”參數(在瀏覽器搜索欄上),然后解密 id 以從編輯視圖中獲取 id 的值。如何使用 AES 加密。

public ActionResult Edit(int? id)
{
    return view(model);
}

您無法加密和解密 URL 中查詢字符串參數中的參數。 如果要在客戶端瀏覽器和主機系統之間傳遞參數,則必須將參數隱藏在主機和客戶端之間的消息傳遞內容中,同時整個消息傳遞通過 HTTPS 進行加密。

您可以通過以下步驟完成:

第 1 步:在您的項目中創建一個新類並復制粘貼This Link 中的代碼。

第 2 步:立即構建項目

第 3 步:

MyExtension命名空間放在頁面頂部(視圖)

@Html.EncodedActionLink(item.Name, "YourActionName", "YourControllerName", new { id = item.ID }, null)

第四步:

[EncryptedActionParameter]
public ActionResult Edit(int? id)
{
    return view(model);
}

編輯:在我做了上面的步驟后,我發現解密有問題,我改變了它。所以你需要改變byte[] IV = { 2, 4, 6, 8, 10, 12, 14, 16, 18, 20 }; byte[] IV = { 55, 34, 87, 64, 87, 195, 54, 21 }; MyExtensions類中的DecryptEncrypt方法中。

暫無
暫無

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

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