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();
                }
            }
        }
    }

猜你喜欢

转载自blog.csdn.net/qq_19309473/article/details/134744138
今日推荐