客户端向webservice传递中文参数webservice服务器端得到却为???????

comy 2003-11-13 05:41:55
客户端javascript向webservice传递的中文参数到webservice服务器端显示为 ?????
如何解决?请不要告诉我把中文参数改为英文之类的答案.谢谢.
...全文
155 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
comy 2003-11-14
  • 打赏
  • 举报
回复
兄弟们,saucer(思归) 和 KK4(逐月) 所述方法都没有用呢。
其实用这种方法
document.all.TableTree.GetTreeXml.callService(getSqlError,"CheckSQL",idx,sql);
在webservice的
[WebMethod]
public string CheckSQL(int DBIndex,string sql)
{
//...
}

在调试状态下看sql中的中文全部变成?了
我如何得到正确的字符呢?


gyhongjun 2003-11-14
  • 打赏
  • 举报
回复
看一下两边的字符集是否一致
KK4 2003-11-14
  • 打赏
  • 举报
回复
你應該了解webservices通過WSFL 向UDDI注冊中心注冊,通過WSDL規范成XML文檔,通常XML默認的Version是1.0 ,EnCoding是該文檔使用的字符集,在西歐等國家通用字符為ISO-8859-1,若未指定的話默認未UTF-8字符。
SO you must Setting this in your webservices:
<globalization requestEncoding="utf-8" responseEncoding="utf-8" />
saucer 2003-11-14
  • 打赏
  • 举报
回复
not sure if it works, but try

<configuration>
<system.web>
<globalization requestEncoding="GB2312" responseEncoding="GB2312" uiCulture="zh-CN" culture="zh-CN" fileEncoding="GB2312" />
</system.web>
</configuration>
Rossetti 2003-11-14
  • 打赏
  • 举报
回复
up
comy 2003-11-14
  • 打赏
  • 举报
回复
对了,礼拜一公司无法上网了,可能要过些日子来结贴了,大家多多发表意见。
祝各位周末愉快!美女相伴!
comy 2003-11-14
  • 打赏
  • 举报
回复
反正编码我是没有怎么搞明白,问题是解决了,但是不知道是否稳定
客户端对sql编码:
encodeURI(sql);

webservice服务器端解码
public string CheckSQL(int DBIndex,string sql)
{
string sqlName = HttpUtility.UrlDecode(sql);
//...
}
感谢大家的帮助,如果大家还有什么办法可以告诉我;
或者你认为我的方法有什么问题的话也可以提出。
礼拜一再来结贴
bettyzy 2003-11-14
  • 打赏
  • 举报
回复
我也曾遇到过相同的问题,我当时用utf-16编码后就好了
zlp321002 2003-11-14
  • 打赏
  • 举报
回复
我传递过中文,没出现你所说的问题。
zlp321002 2003-11-13
  • 打赏
  • 举报
回复
UTF8--------》GB2312

12,162

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 Web Services
社区管理员
  • Web Services社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧