javaweb提交表单到servlet提示下载

     最近学到了javaweb,在写代码的时候遇到了一个很有意思的错误,现在我来与大家分享一下。

我在写把一个表单提交到Servlet的时候,不知道怎么回事,提交表单后自动提示下载文件,拿到浏览器运行就乱码,估计是response.setContentType()有错误。


  表单提交页面没错,servlet接收数据也没有错,很奇怪!后来我找来以前写过的同类代码仔细核对,发现我在写防止乱码的代码有点不同:

response.setContentType("charset=utf-8");

正确的写法:

response.setContentType("text/html;charset=utf-8");

  原因是当用户请求一个网络资源时,收到的是一个httpresponse响应。该响应头中包含congtent-type等信息,暗示浏览器以哪种方式来处理content中的信息。提示下载说明content-type指示不是浏览器可以处理的格式。我们要把格式写正确,编程是一个马虎不得的事情。


  最后友情提示:

//确保识别请求中的中文
request.setCharacterEncoding("utf-8");
//确保响应输出中文不乱吗
response.setContentType("text/html;charset=utf-8");


猜你喜欢

转载自blog.csdn.net/yh17388/article/details/79765784