Bing Search 返回結果中关键字前后出现全角空格导致显示乱码

现在的项目基于Java,使用了Bing Search API来进行Jason查询,后来发现在Firefox出现乱码,跟踪发现是关键字前后出现全角空格而导致IE和Firefox显示都不正常。
尝试在取得返回結果后replace全角空格为半角,后来又尝试在client中用js去替换。效果都不是很好,后来突然发现是由于查询語句中一个参数设置导致。
无语。。。

在Java中调用Bing Search API时如果指定Options=EnableHighlighting(如下),则返回的Jason字符串中在关键字两边会有全角空格字符,而全角空格字符在IE下显示为很长的空格,在Firefox上显示为乱码。
String queryUrl = "http://api.search.live.net/json.aspx?AppId=xxx"
+ "&Sources=Web&Version=2.0&Market=en-US&Options=EnableHighlighting&Web.Count=%d"
+ "&Web.Offset=%d&Query=%s";

解决方法:在查询請求中去除Options=EnableHighlighting的参数设置后正常

你可能感兴趣的:(json,Web,IE,firefox,bing)