![](/img/trans.png)
[英]How to encrypt data from server side and pass it to client side(javascript) and decrypt and use it
[英]Pass data to server side from Javascript code
我正在嘗試將數據從客戶端發送到服務器端(asp.net c#), 如果您真的想知道的話,我想發送window.name
屬性 。
首先,我想到了一個asp:HiddenField
並且在OnSubmit
事件上讓一些JS在隱藏字段中寫入值。 唯一的問題是,我只能從PreLoad
事件到PreRenderComplete
事件訪問隱藏字段值(根據this )。 我正在處理的項目在OnInit
事件中有很多代碼,不幸的是我無法移動它,因此需要在此處使用window.name
值。
我的其他想法是添加自定義HTTP標頭windowId
或在OnSubmit
事件上添加一個JS,該JS將一個參數附加到document.location.href
。
我設法用XMLHttpRequest
setRequestHeader
從JS寫入標頭,但是, 也許我在實現中做錯了事 ,這生成了2個請求,第一個是正常的,期望的(單擊按鈕/鏈接...),第二個來自XMLHttpRequest
。 我發現這種行為非常不自然。 你有什么建議嗎? ( 請參見下面的代碼段 )。 我沒有用什么AJAX。
var oReq = new window.XMLHttpRequest;
oReq.open('POST', document.location, false);
oReq.setRequestHeader("windowId", window.name);
oReq.send(null);
對於OnSubmit
鈎子的想法,我並沒有花太多時間,但是我認為必須在將windowId
參數值附加到#字符之前附加#字符,以免重新加載頁面。 我對此可能是錯的。 無論如何,我必須在獲取值后將其從URL中刪除,以使用戶看不到討厭的URL。 你有什么建議嗎?
好吧,你有什么想法?
感謝您閱讀我所有的煩惱,並預先感謝您的答復。
我會推薦<asp:HiddenField />
(例如, <asp:HiddenField ID="hfWindowName" runat="server" />
。在OnInit
您仍然可以使用Request.Form
來訪問其值:
string windowName = Request.Form(hfWindowName.UniqueID);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.