`

spring cloud 中使用zuul作为路由时上传文件名称乱码处理

阅读更多
最近在做关于文件上传的接口,但是不管怎么处理,文件的名称总是乱码,我们使用的技术站为
spring cloud

  前端原代码:
 uploadData () {
        let formData = new FormData()
        let fileNames = []
        for (let i = 0; i < this.fileList.length; i++) {
          formData.append('files', this.fileList[i]);
          fileNames.push(this.fileList[i].name)
        }
        let json = {
          'description': this.sampleDescription,
          'status': this.qualifyValue
        }
        formData.append('json', JSON.stringify(json));
        // 上传文件
        this.$http.post(`/modules/api/v1/sampleInformation/uploadSampleReport/${this.$route.params.sampleId}`, formData).then(res => {
          if (res.status === 200) {
            this.$router.replace({
              name: 'my-sample'
            })
          } else {
            this.loading = false
          }
        })


更改后的代码:

 
 uploadData () {
        let formData = new FormData()
        let fileNames = []
        for (let i = 0; i < this.fileList.length; i++) {
          formData.append('files', this.fileList[i]);
          fileNames.push(this.fileList[i].name)
        }
        let json = {
          'description': this.sampleDescription,
          'status': this.qualifyValue
        }
        formData.append('json', JSON.stringify(json));
        // 上传文件
        this.$http.post(`/zuul/modules/api/v1/sampleInformation/uploadSampleReport/${this.$route.params.sampleId}`, formData).then(res => {
          if (res.status === 200) {
            this.$router.replace({
              name: 'my-sample'
            })
          } else {
            this.loading = false
          }
        })


后台处理代码:
  
List<Part> list = (List<Part>) request.getParts();
            for (Part part : list) {
                if (!part.getName().equalsIgnoreCase("files")) {
                    continue;
                }
                //Content-Disposition: form-data; name="files"; filename="test.pdf"
                String fileName = part.getHeader("Content-Disposition").split(";")[2];
                LOG.info("上传检测报告获取到的文件名称:{}", fileName);
                fileName = new String(fileName.getBytes(Charsets.ISO_8859_1), "UTF-8");
   }
   

  
0
0
分享到:
评论

相关推荐

    SpringCloud zuul jar包

    SpringCloud Zuul是...总的来说,SpringCloud Zuul作为一个强大的API网关,它简化了微服务架构中的请求处理,提高了系统的可扩展性和可靠性。理解和熟练运用Zuul,对于构建高效、稳定、安全的微服务系统至关重要。

    springcloud处理文件上传

    本话题主要探讨如何在Spring Cloud环境中处理文件上传,特别是在结合Feign和Zuul这两个组件时的实现方法。Feign是Spring Cloud的一个声明式HTTP客户端,用于简化服务间的调用;而Zuul则是作为API网关,提供路由、...

    spring cloud oauth2 zuul 单点登录 认证授权

    在"spring-cloud-examples-master"这个压缩包中,可能包含了示例代码和配置文件,用于演示如何在Spring Cloud环境中集成OAuth2和Zuul实现单点登录。你可以通过阅读源码,理解它们的配置和交互方式,进一步了解如何在...

    Spring Cloud Zuul动态路由demo

    Spring Cloud Zuul 是一个边缘服务,作为微服务架构中的API网关,它扮演着动态路由、过滤器、安全控制等多种角色。本篇文章将深入探讨如何使用Spring Cloud Zuul实现动态路由,并通过实际的代码示例——"Spring ...

    spring-cloud-zuul(包含注册中心、服务生产者、服务消费者、zuul网关路由).zip

    《Spring Cloud Zuul:构建微服务的路由网关》 Spring Cloud Zuul 是一个基于 Netflix Zuul 的微服务网关,它提供了动态路由、过滤器以及面向服务的路由功能,是构建分布式系统的重要组件。在Spring Cloud生态中,...

    springcloud zuul gateway 服务网关

    SpringCloud Zuul Gateway 服务网关是Spring Cloud生态系统中的一个重要组件,它主要负责微服务架构中的路由转发和过滤器功能。Zuul是Netflix开源的一个边缘服务,而Gateway则是Spring Cloud针对Zuul进行的升级版,...

    SpringCloud eureka mybatis zuul feign

    在微服务架构中,SpringCloud是一个非常流行的框架集合,它为开发者提供了构建分布式系统所需的工具,包括服务发现、配置管理、断路器、智能路由、微代理等。在这个项目中,我们关注的是SpringCloud Eureka、Zuul、...

    spring cloud 使用Zuul 实现API网关服务问题

    在本文中,我们将主要介绍如何使用 Spring Cloud 的 Zuul 组件来实现 API 网关服务问题。 Zuul 是一个基于 Netflix Zuul 的 API 网关组件,它可以解决路由规则和服务实例的维护问题,以及一些校验(比如登录校验等)...

    SpringCloud(zuul路由网关)

    在SpringCloud生态中,Zuul是一个重要的组件,它作为边缘服务或者说是API网关,承担着路由转发和过滤器的角色。下面将详细阐述Zuul在SpringCloud中的应用及其关键知识点。 1. **Zuul的基本概念** Zuul是由Netflix...

    SpringCloud中集成Zuul网关.html

    SpringCloud中集成Zuul网关。 添加相关依赖,编写路由地址,添加过滤器可以在过滤器中对请求做其他操作 如验证是否登录、解密请求中的数据等

    Spring Cloud(zuul)使用例子.zip

    在这个例子中,我们主要关注的是 Zuul,它是Spring Cloud的一个边缘服务和动态路由组件,用作API网关。 Zuul的主要职责包括: 1. **动态路由**:Zuul可以对请求进行路由,将客户端的请求转发到不同的后端服务。...

    spring cloud zuul

    **Spring Cloud Zuul** 是一个基于 Spring Framework 和 Netflix Zuul 的边缘服务工具,它作为微服务架构中的边缘服务器,提供动态路由、流量控制、安全、监控等功能。Zuul 主要是作为 API 网关,它负责处理所有来自...

    17.Spring Cloud集群中使用Zuul

    在Spring Cloud生态系统中,Zuul是一个至关重要的组件,它被用作边缘服务或API网关,负责处理所有客户端的入站请求。本教程将深入探讨如何在Spring Cloud集群环境中集成并利用Zuul实现动态路由,以及Zuul的各种配置...

    springcloud zuul网关服务

    9. **Zuul配置**:在Spring Cloud环境中,Zuul的配置通常通过YAML或properties文件完成,包括路由规则、过滤器配置等。开发者可以根据实际需求动态调整这些配置。 10. **监控和日志**:Zuul的日志可以帮助开发者...

    spring cloud eureka zuul ribbon hystrix feign config 示例

    在给定的标题和描述中,我们看到了几个关键组件:Eureka、Zuul、Ribbon、Hystrix 和 Feign,这些都是Spring Cloud生态中的重要组成部分。下面将详细阐述这些组件及其在实际应用中的作用。 1. **Eureka**:它是...

    05_SpringCloud API网关zuul.md

    SpringCloud API网关zuul ,路由规则写在配置文件中。为了便于修改,把配置文件放到配置文件中心。使用springcloud config .后期可以使用携程的阿波罗 可视化操作界面 并且是中文的。

    【微服务架构】SpringCloud之路由网关(zuul)

    在微服务架构中,Spring Cloud Zuul 是一个重要的组件,它作为边缘服务或者说是路由网关,承担着请求分发、过滤以及安全控制等职责。本文将深入探讨Spring Cloud Zuul 的核心概念、功能和使用方法。 首先,Zuul 是 ...

    spring-cloud-zuul2:Zuul2与Spring Cloud集成

    Spring Cloud Zuul2 Zuul与Spring Cloud的集成。 警告:正在进行中入门启动zuul服务器./src/test/java/rocks/devmesh/spring/cloud/zuul/Application#main请求到'/ healthcheck'端点$ curl ...

    spring cloud zuul 使用

    这篇博客文章“Spring Cloud Zuul使用”可能详细介绍了如何在实际项目中配置和使用Zuul。 1. **Zuul简介** - Zuul的主要功能是作为API网关,对来自客户端的请求进行路由转发,简化了微服务间的调用。 - 它还提供...

Global site tag (gtag.js) - Google Analytics