Asp.net传递中文数据的解决方法
IT专家网 > winsystem
Asp.net传递中文数据的解决方法
jquery的ajax 写死是使用utf-8 传递数据的,而我的webconfig配置了
(这样配置的原因是:用户昵称中存在很多特殊字符,只有gb2312才能支持)
这样表示,我丢给jquery的字符,他还是采用了utf-8给我传去了后台,后台的handler拿到的完全是乱码。
为了解决这个问题,之前写过一个
不吹牛的jquery在.net中通过gb2312传中文的实现
这个主要通过get方式来传送,从而避免了jquery的编码,采用页面的request和response来编码。
实现倒是可以实现,只是有一个限制:传递的中文长度受限,好像是根据浏览器的地址栏最大长度,不可以超过256个字的。
那么有没有完美的方案呢?
我想到,通过.net类库提供的Request.Forms,或者Request.QueryString得到的,都是他按照webconfig配置自动编码、解码的字符串,完全都不受我控制。那我是否可以从更底层获取到byte数组,自己解码呢?
最后找到Request.BinaryRead方法。
首先还是通过jquery的Ajax方法将中文传过来,这个时候,得到的是utf8编码的(由jquery编码)。
在后台:
在前台:
相关文章
关键词:Web开发 开发语言 IT技术 ASP.net 微软 技巧
责任编辑:杜飞
专题推荐
原创文章
微博互动
白皮书
All Rights Reserved, Copyright 2004-2013, Ctocio.com.cn
渝ICP证B2-20030003号 如有意见请与我们联系 powered by 天极内容管理平台CMS4i