Request
Referer的乱码终极解决方法+获得用户是用什么关键字通过搜索引擎进来的分类:ASP
NET2009-12-1018:08255人阅读评论(0)收藏举报当你想获取Url字符串的时候,最好不要直接调用Request
UrlReferrer
ToString()方法,因为这样有可能返回的是一堆乱码
产生的原因是,用户在来你网站之前的那个网站的编码方式(Encoding)也许和你的网站不一样,导致UrlDecode的时候出现了乱码
这里建议使用Request
UrlReferrer
OriginalString,这个属性返回的就是当时构造Uri对象的原始Url
以下为获得用户是用什么关键字通过搜索引擎进来的方法viewplaincopytoclipboardprint
stringRegx="";2
stringRefUrl=Request
UrlReferrer
OriginalString;3
//Response
Write(HttpUtility
UrlDecode(RefUrl,System
Encoding
GetEncoding("gb2312")));4
if(RefUrl
ToLower()
Contains("google"))5
RefUrl=HttpUtility
UrlDecode(RefUrl,System
Encoding
GetEncoding("utf-8"));7
Regx="&q=(
[//w*%+]*)
if(RefUrl
Contains("baidu
com"))10
RefUrl=HttpUtility
UrlDecode(RefUrl,System
Encoding
GetEncoding("gb2312"));12
Regx="wd=(
[//w*%