ajax请求数据中文乱码

前端之家收集整理的这篇文章主要介绍了ajax请求数据中文乱码前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

先描述一下当时的情况,ajax异步请求数据,本地eclipse启动,页面接收到数据不会乱码,但是把工程部署到jboss就乱码了,开始以为是jboss的问题了,改了server.xml不行,然后以后是打包的问题,在pom.xml文件指定了打包编码为UTF-8,还是不行,郁闷了好久。最后修改了一下数据输出代码,注释的为原来的代码(jboss会乱码),接下来的四行是改过的代码,jboss也就不会乱码了。

private boolean print2web(String content) {
		PrintWriter out = null;
		try {
//			out = ServletActionContext.getResponse().getWriter();
//			ServletActionContext.getResponse().setContentType("application/json");
//			ServletActionContext.getResponse().setCharacterEncoding("UTF-8");
			
			ServletActionContext.getRequest().setCharacterEncoding("utf-8");  //这里不设置编码会有乱码
			ServletActionContext.getResponse().setContentType("application/json;charset=utf-8");
			ServletActionContext.getResponse().setHeader("Cache-Control","no-cache"); 
			out = ServletActionContext.getResponse().getWriter();
			out.write(content);
			
			out.flush();
			out.close();
			return true;
		} catch (Exception e) {
			e.printStackTrace();
		} finally {
			out.flush();
			out.close();
		}
		return false;
	}

猜你在找的Ajax相关文章