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();
            }
       }

这样就能解决中文乱码的问题!

posted @ 2020-04-16 16:07  八方鱼  阅读(680)  评论(0编辑  收藏  举报