对着教学视频敲下来的代码,运行的时候突然变成下载。一开始笔者也很懵,读了好几遍代码都没有发现问题,其他程序运行正常,一度怀疑人生。

最后,终于发现了,都是一个标点符号惹得祸。
问题出现在设置发送到客户端的响应的内容类型的时候
response.setContentType("text/html;charset=utf-8");然而我敲的是
response.setContentType("text/html,charset=utf-8");不仔细看很难发现,一个标点符号打错了,html后的分号(;)打错成逗号(,)。从而导致了运行时莫名错误。
原因是:打错标点符号后,字符串里的内容不能被正确解析描述类型,所以浏览器会让你把界面内容下载下来。
本文通过一个实例说明了标点符号错误如何导致HTTP响应被浏览器误判为下载文件。问题出现在设置响应的内容类型时将分号误打为逗号,导致浏览器无法正确解析Content-Type,最终给出了解决方案。
1215





