1. 程式人生 > >cookie值中包含等號、空格、分號等特殊字元的處理

cookie值中包含等號、空格、分號等特殊字元的處理

當cookie中包含有等號、空格、分號等特殊字元時,可能會導致資料丟失、或者不能解析的錯誤,一個較好的解決辦法就是:在將cookie值寫入客戶端瀏覽器之前,首先進行URLEncode編碼,讀取cookie時,進行URLDecode即可。

php

提供了2種設定cookie的方法,setcookie與setrawcookie,

二者的區別是:前者會自動對cookie值進行URL編碼,而後者不會進行URL編碼。

php通過$_COOKIE取得客戶端傳送到伺服器的cookie資訊(不需要進行URLDecode操作)。

java

通過HttpServletResponse addCookie(Cookie cookie)向客戶端寫cookie資訊;

通過HttpServletRequest  getCookies()讀取cookie。

通過URLEncoder.encode(String s)對URL進行編碼。

通過URLDecoder.decode(String s)對URL進行解碼。

javascript

通過encodeURIComponent(URIstring)對URL進行編碼

decodeURIComponent() 函式可對 encodeURIComponent() 函式編碼的 URI 進行解碼

.NET

Server.URLEncode

Server.URLDecode