• 0603-Zuul构建API Gateway-通过Zuul上传文件,禁用Zuul的Filter


    一、通过Zuul上传文件

      参看地址:https://cloud.spring.io/spring-cloud-static/Edgware.SR3/single/spring-cloud.html#_uploading_files_through_zuul

      如果您使用@EnableZuulProxy,则可以使用代理路径来上传文件,只要文件很小,就应该可以工作。对于大文件,在“/ zuul / *”中有一条绕过Spring DispatcherServlet的路径(以避免多部分处理)。即如果zuul.routes.customers = / customers / **,则可以将大文件发布到“/ zuul / customers / *”。 servlet路径通过zuul.servletPath外化。如果代理路由引导您通过功能区负载平衡器,例如超大文件还需要提升超时设置。

      可以在Zuul配置:application.yml. 

    hystrix.command.default.execution.isolation.thread.timeoutInMilliseconds: 60000
    ribbon:
      ConnectTimeout: 3000
      ReadTimeout: 60000

      请注意,为了使流式文件适用于大型文件,您需要在请求中使用分块编码(某些浏览器默认不会这样做)。例如。在命令行上:

    $ curl -v -H "Transfer-Encoding: chunked" 
        -F "file=@mylarge.iso" localhost:9999/zuul/simple/file

    二、嵌入简略Zuul

      如果您使用@EnableZuulServer(而不是@EnableZuulProxy),您也可以在不使用代理的情况下运行Zuul服务器,或选择性地切换代理平台的某些部分。您添加到ZuulFilter类型的应用程序的任何bean都将自动安装,因为它们与@EnableZuulProxy一样,但没有自动添加任何代理过滤器。

      在这种情况下,通过配置“zuul.routes。*”来指定进入Zuul服务器的路由,但是没有服务发现和代理服务,所以“serviceId”和“url”设置将被忽略。例如:

       application.yml. 

     zuul:
      routes:
        api: /api/**

      将“/ api / **”中的所有路径映射到Zuul过滤器链。

      将应用程序设置为通用的ZUUL服务器,而无需内置任何反向代理功能。到ZUUL服务器的路由可以通过{@ Link ZuulProperties}(默认情况下没有)。

    三、禁用Zuul过滤器

      针对Spring Cloud的Zuul配备了许多在代理和服务器模式下默认启用的ZuulFilter bean。有关启用的可能过滤器,请参阅zuul过滤器包。如果你想禁用一个,只需设置zuul.<SimpleClassName>.<filterType> .disable = true。按照惯例,过滤器后面的包是Zuul过滤器类型。例如,要禁用org.springframework.cloud.netflix.zuul.filters.post.SendResponseFilter 需设置 zuul.SendResponseFilter.post.disable = true。

  • 相关阅读:
    Python 之nmap模块问题解决
    phpstudy --mysql支持外联。
    Kali 更新
    Win 10 访问IPV6地址 问题。
    Macbookpro 使用Parallels Deskop安装kali Parallels Tools
    Windows 转 Mac 利用git继续管理github
    shell脚本移植问题(windwos移植到linux)
    APP测试项总结
    apktool 反编译
    微信小程序-服务器返回数据中包含有 换行符失效问题解决方案
  • 原文地址:https://www.cnblogs.com/bjlhx/p/9010950.html
Copyright © 2020-2023  润新知