问题描述
我http:localhost/book/图书.aspx用urlrewrietnet可以成功请求http:localhost/book.aspx?key=图书,可是我把图书编码后为http:localhost/book/%253f%254e.aspx就会出现400请求错误?????
解决方案
解决方案二:
使用urlencode试试
解决方案三:
1、把“图书”换成英文,试试,解决可能的rewrite问题2、urlencode汉字参数
解决方案四:
1、encodeURLComponent()//在谷歌浏览器下地址栏中依旧是明码2、escape()//谷歌浏览器和360地址栏都可以正常显示编码最好自己下载个那种gb2312的。这种都有缺陷。第二种空格会编码会成+号如果你需要可以留个邮箱。发一份给你
解决方案五:
建议,不要用中文.........浏览器编码不同,有的是不认识中文的...........
解决方案六:
方案一:Securitysec=newSecurity();传递http:localhost/book.aspx?key="+sec.Encrypt(key,"cccccccc")+"获取stringkey=sec.Decrypt(Request.QueryString["key"].ToString(),"cccccccc");方案二:传递http:localhost/book.aspx?key="+Server.UrlEncode(key)+"获取stringkey=Server.UrlDecode(Request.QueryString["key"].ToString());
解决方案七:
引用4楼chenlitong_521的回复:
建议,不要用中文.........浏览器编码不同,有的是不认识中文的...........
wfh1989@qq.com,谢谢哈。。。。
解决方案八:
引用1楼ximenwuji的回复:
使用urlencode试试
我已经使用了URLEncode了。。。。
解决方案九:
注意看URL。编译后的明显不是原来的页面了。·你编译的不是参数吧··book.aspx?key=图书book/%253f%254e.aspx
解决方案十:
引用8楼asd1308855的回复:
注意看URL。编译后的明显不是原来的页面了。·你编译的不是参数吧··book.aspx?key=图书book/%253f%254e.aspx
因为我用urlrewritenet重写了,所以才会变成book/%253f%254e.aspx,不然应该是book.aspx?key=%253f%254e