Spring Cloud Zuul addZuulRequestHeader 中文乱码解决方案
在Spring Cloud Zuul中添加filter的时候,要在header中加入含有中文属性的对象,在另外一个微服务中接受的时候,发现中文乱码,具体解决方案,是先用URLEncoder编码,然后微服务的接受的时候再解码
Spring Cloud Zuul:
RequestContext.getCurrentContext().addZuulRequestHeader("user", URLEncoder.encode(JSONObject.toJSONString(obj), "UTF-8")); // obj这个对象中含有中文属性
微服务:
String userStr = this.getRequest().getHeader("picaUser"); User user = null; if (StringUtil.isNotNull(user)) { try { user = URLDecoder.decode(userStr, "UTF-8");//解码 } catch (UnsupportedEncodingException var4) { var4.printStackTrace(); } }
这样就能解决中文乱码的问题!