如果您@EnableZuulProxy您可以使用代理路徑上傳文件佛嬉,只要文件很小暖呕,它就應(yīng)該工作苞氮。對于大文件,有一個替代路徑繞過“/ zuul / *”中的SpringDispatcherServlet(以避免多部分處理)库物。也就是說,如果zuul.routes.customers=/customers/**則可以將大文件發(fā)送到“/ zuul / customers / *”诱告。servlet路徑通過zuul.servletPath進行外部化民晒。如果代理路由引導(dǎo)您通過Ribbon負(fù)載均衡器,例如靴姿,超大文件也將需要提升超時設(shè)置
application.yml
hystrix.command.default.execution.isolation.thread.timeoutInMilliseconds: 60000
ribbon:
? ConnectTimeout: 3000
? ReadTimeout: 60000
請注意磁滚,要使用大型文件進行流式傳輸,您需要在請求中使用分塊編碼(某些瀏覽器默認(rèn)情況下不會執(zhí)行)辈毯。例如在命令行:
$ curl -v -H "Transfer-Encoding: chunked" \
? ? -F "file=@mylarge.iso" localhost:9999/zuul/simple/file