java实现根据远程url下载文件到浏览器

本文提供 java实现根据远程url下载文件到浏览器片段代码,仅供参考。

可以实现,根据远程url地址下载推送至浏览器下载,这个方法可以解决因前端直接调用远程url下载出现的跨域问题。

   /**
     *  根据远程url下载文件
     * @param url 远程URL
     * @param response
     */
    @RequestMapping("/url/download")
    public void douYinVideoDownload(String url, HttpServletResponse response) {
        BufferedInputStream inputStream = null;
        try {
            response.setContentType(MediaType.APPLICATION_OCTET_STREAM_VALUE);
            // 下载时候的文件名称和后缀
            FileUtils.setAttachmentResponseHeader(response, "test.zip");
            URL path = new URL(url);
            inputStream = new BufferedInputStream(path.openStream());
            byte[] bytes = new byte[1024];
            int len;
            while ((len = inputStream.read(bytes)) != -1) {
                response.getOutputStream().write(bytes, 0, len);
            }
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            if (inputStream != null) {
                try {
                    inputStream.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
    }

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
THE END
分享
二维码
< <上一篇
下一篇>>