vuejs怎么根据url下载文件

通过java实现的后台程序生成了一个zip文件,并返回一个url到前台,前台通过vuejs也可以获取到这个url,现在我想通过界面上点击按钮打开下载窗口,根据这个url把zip文件下载下来,这个怎么实现,求大神指点

阅读 77.4k
6 个回答

VUE只需要把URL绑定在a标签就可以了、a标签有个属性是download

<a href="/images/myw3schoolimage.jpg" download="w3logo">

我觉得需要先理解一下Vue.js在项目中起的什么作用?是不是把后台给你的数据,你绑定到具体的数据对象上,给用户显示出来,它就做完了它这一阶段的工作,后台给了你一个下载链接,你把链接放到该放的地方不就行了吗?至于如何实现的资源下载就和它没有关系了


下载,后端给定的无非就是一个具体的资源链接,例如什么什么.zip,或者是一个动态的链接,程序中读取了这个资源,再通过Content-type: application/octet-stream类型传到浏览器端,Vue要做的就是给把链接放到按钮操作就行了。

直接使用 window.open 打开链接就ok了

使用ajax向后台请求,后台返回文件的url,然后用window.open(url)就可以了

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题