作者TheThird (第三个…)
看板Visual_Basic
标题[ASP ] Response.Redirect可以传送UTF-8吗?
时间Fri Jan 13 20:46:09 2012
各位版友好:
请问asp(1.0,不是.NET)的response.redirect传送Url时可以指定
语系,像是指定utf-8吗?
我有个server是windows 2003,因为很旧了,所以上面只跑简单的
asp网页,其他的网页是由Synology的NAS执行。可是这台NAS的环境是
utf-8,放英文数字构成的网页名称还没问题,可是一但放含有中文的
网页(或目录),就都连结不到。
asp上有个网页上传系统供同仁上传自制的FrontPage网页,目前
他们采取英文数字名称是没问题,可是长官反映说要能使用中文档名
,非常困扰Orz...
我找出的原因是asp的response.redirect传送URL是采取Big5,即
使我自己手动将中文编成utf-8用response.redirect传也不行,因为
asp会用big5再encoding过...
所以想请问可不可以在response.redirect传URL时指定utf-8?
--
https://www.youtube.com/watch?v=zqzVtROqPQI
お耳がぴょんぴょん♪ともちんこと板野友美です。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.137.207.11
※ TheThird:转录至看板 Programming 01/13 20:55
1F:推 TeemingVoid:请试试看: 01/13 22:39
2F:→ TeemingVoid:s="<meta http-equiv=""refresh"" content=""1;URL= 01/13 22:40
3F:→ TeemingVoid:档名.asp"">" 01/13 22:40
4F:→ TeemingVoid:Response.Write(s) 01/13 22:41
我的问题是要redirect的网址是另一台server(UTF8)的网址,但是asp的redirect是用
预设的编码(Big5)去encoding网址...所以连不到...
5F:→ blestadsl:Server.URLEncode("http://网址.tw") 01/15 22:18
我的程式有针对中文编成UTF8了。麻烦的地方在於response.redirect时会用预设的
语系(Big5)再编一次Orz...
附带一提,在ASP只是单纯使用Server.URLEncode(),会去找预设的语系编码(例如
windows 2003的环境下是用Big5),要编成UTF8要有另外的手续。
--
顺便提一下我後来用了种很烂的方法解决了QQ,我将自己编过的UTF8网址透过
javascript的window.open()做转址,放弃使用asp的response.redirect...
总之暂时治标就是了...
※ 编辑: TheThird 来自: 114.136.212.52 (01/16 21:42)