4
人物在我的應用程序需要用戶的電子郵件地址,加密,並且用urlencode它,一起將它傳遞到查詢字符串。的Request.QueryString去除加密文本
email = Server.UrlEncode(aes.Encrypt(email));
着陸頁做了的Request.QueryString [ 「電子郵件」],UrlDecodes它,然後將其解密。
string email = Server.UrlDecode(Request.QueryString["eId"]);
string decemail = aes.Decrypt(email);
return decemail;
非常奇怪的行爲發生在一個「+」字符被刪除,因此解密失敗。
我試圖刪除UrlDecode,但這並沒有解決問題。
什麼解決的問題是這樣做的:
string email = Request.QueryString["eId"].ToString();
string decemail = aes.Decrypt(email);
return decemail;
擺脫UrlDecode的,並調用一個ToString()的查詢字符串。
有誰知道爲什麼會發生這種情況? Request.QueryString默認調用urlDecode嗎?我不認爲它確實如此。
另外,爲什麼會做在這個實例中的ToString()的工作?
啊啊啊,所以我是一個解碼串進行解碼。這毀了約90分鐘的時間我笑 – 2009-11-18 22:59:39
哈哈。那麼現在你知道=) – mauris 2009-11-18 23:11:22