[英]How to prevent decoding of encoded forward slashes in Windows Live mail?
我有一個包含通過電子郵件發送的繼續鏈接的表格。 在此鏈接中,我添加了一些由Base64
編碼的敏感加密數據。 該值包含一個斜杠,該斜杠被編碼為%2F
(帶有Server.UrlEncode
)。 當我將鏈接發送到Windows Live地址時,我看到Outlook.com將%2F
解碼回正斜杠。 我該如何預防?
我正在發送:
<a href="http://www.tempuri.com/key=RVQ%2FcGhvbmVfaG9tZSE%3D">Continue</a>
但是我看到了:
<a href="http://www.tempuri.com/key=RVQ/cGhvbmVfaG9tZSE=%3D">Continue</a>
可以通過從任何郵件客戶端向Windows Live地址發送鏈接http://www.tempuri.com/key=RVQ%2FcGhvbmVfaG9tZSE%3D
來復制該鏈接。
您可以嘗試對值進行兩次編碼。
因此RVQ/cGhvbmVfaG9tZSE=
編碼為RVQ%2FcGhvbmVfaG9tZSE%3D
>這就是您的價值。
現在對此進行編碼,您將得到RVQ%252FcGhvbmVfaG9tZSE%253D
>電子郵件客戶端不會將%252F解碼為斜線,因此您的問題就解決了。
只是不要忘記將值解碼兩次;-)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.