当前位置: 首页 > news >正文

免费建网站教程网站到期可以续费

免费建网站教程,网站到期可以续费,离职删除做的网站,下载模板后怎么建设网站前言 最近修改老项目项目,使用zuul网关返回的中文内容乱码了,如果使用GBK或者GB2312编码确正常显示,稍微实验了一下,发现里面很多细节,毕竟Springboot对我们做了很多事情,而且当我们使用不同的模式会出现很…

前言

最近修改老项目项目,使用zuul网关返回的中文内容乱码了,如果使用GBK或者GB2312编码确正常显示,稍微实验了一下,发现里面很多细节,毕竟Springboot对我们做了很多事情,而且当我们使用不同的模式会出现很多神奇的现象。

准备

因为是zuul网关,实际上是servlet的response回写返回结果,直接模拟如下:效果相同

@RestController
@SpringBootApplication
public class Main {public static void main(String[] args) {SpringApplication.run(Main.class, args);}@GetMapping("/hello")public void stringDemo(HttpServletResponse response) throws IOException {//response.setCharacterEncoding("UTF-8");try(PrintWriter printWriter = response.getWriter()){printWriter.write("中文");printWriter.flush();}}
}

模拟返回,执行postman和浏览器访问:

 

都是乱码无疑。 

原因

原因实际上很简单,response默认编码为ISO8859-1,我们实际来看看

 

所以除了英文,都是乱码,Springboot默认实际上已经utf-8编码了,在ResponseBody注解上

 要解决这个问题,可以手动编码

但是新问题出现了

 

postman处理正常,但是浏览器都是乱码,说明浏览器不能正确识别http的response编码

如果我们使用GBK或者GB2312

 

只有浏览器正确显示,其他包括浏览器的console都乱码,说明浏览器识别中文是gbk或者GB2312等,但是其他地方并不是这么识别的。 

Springboot解决思路

上面的思路在postman或者接口发钱调用是可以正确识别中文的,那么有没有response默认utf-8呢,Springboot实际上是默认utf-8,只不过没启用。

org.springframework.web.filter.CharacterEncodingFilter

在org.springframework.boot.autoconfigure.web.servlet.HttpEncodingAutoConfiguration自动装配的bean中被初始化

 

 那么配置是server.servlet.encoding.forceResponse

去掉手动编码,加上配置

 

跟手动设置utf-8编码一样,实际上也是如此

 

mime

实际上上面没有找到根本原因,只是修修补补,本质的原因是mime的缘故,刚刚的请求没有mime的设置,从F12工具看,响应mime.types实际上没有默认值

postman也是如此,只不过postman在没有mime时中文默认utf-8编码,浏览器对于中文是gbk或者gb2312,当然可能有其他中文编码,只不过笔者没有试完。

那么怎么处理呢,如果使用Springboot,那么默认就可以使用ResponseBody注解,通过切面打上mime-type,现在我们手动加上试试

结果如下:

 

mime-type定义了数据的格式,即:http请求和返回的内容格式

在Tomcat和spring-web里面有详细的定义,当然我们也可以自定义,毕竟就是内容的格式罢了,火狐上有关于mime的简介:

 

总结

实际上这个问题很简单,而且也很容易解决,只不过不同的软件有不同的标准,所以即使是utf-8并不能解决问题,而是需要根据实际的情况,比如http,根据mime-type明显比指定utf-8更能表达具体的意义,毕竟mime是具体的标准。

http://www.yayakq.cn/news/290471/

相关文章:

  • 英语培训网站模板ui设计的软件
  • 网站开发最新效果医疗器械网站怎么做
  • 河北网站seo优化企业网站的必要性
  • 商城类网站建设费用梅县区建设工程交易中心网站
  • wordpress 哪个版本seo推广专员招聘
  • 眉山市住房和城乡建设部网站珠海策划网站建设平台
  • 有用的网站地址游戏怎么制作的
  • 广东专业网站优化公司互联网大厂有哪些
  • 网站由什么组成搭建一个网站
  • 穹拓网站建设做公司网站的公司有哪些
  • 网站开发课程设计企业网站seo平台
  • 汕头免费网站制作网站建设流程资讯
  • 滨江做网站dz仿网站头部
  • 怎么开通个人网站怎样做diy家具网站
  • 自适应网站什么做网页升级中每天自动更新什么意思
  • 查询网站mx记录咔咔做受视频网站
  • 浙江省城乡住房建设部网站站内搜索引擎
  • ui设计网站建设是什么jsp网站服务器如何做防护
  • 没有备案号的网站做一个游戏小程序需要多少钱
  • 建设建材网站我的主页设计
  • 大连里程科技做网站建筑工程公司简介
  • 放心的网站设计制作php通用企业网站源码
  • 贵阳网站建设hsyunsowordpress no.7高级版
  • 中国建设银行舟山分行网站网络营销推广的渠道有哪些
  • 游戏网站建设的目的怎样创建网站域名平台
  • 深圳网站建设icxun如何规范使用静态网站
  • 自己的网站首页背景怎么做哈尔滨信息网免费招聘
  • 怎么做dnf辅助网站互联网黄页广告
  • 网站建设的商品分类编码外贸公司网站素材
  • 重庆网站设计工作室泰州建站价格