解决在tinymce编辑器插入视频到正文后不能跳转播放的问题

这篇具有很好参考价值的文章主要介绍了解决在tinymce编辑器插入视频到正文后不能跳转播放的问题。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

问题:在其他软件中上传了视频文件,而后将此视频文件插入到正文中,此视频文件可以点击进度条跳转进度;而在知了(出现bug的这个软件)中上传了视频文件,而后将此视频文件插入到正文中。此视频文件无法点击进度条跳转进度。

需求:希望可以在知了中上传视频文件,将文件作为视频插入到正文中,且可以点击进度条进行跳转播放。

解决方法: 

  1. 首先是上传到其他软件的文件能正常播放就代表不是tinymce编辑器和video控件的问题
  2. 在知了中将附件视频添加到正文需要提供下载链接,因此需要排查下载文件方法的问题
  3. 附件的文件点击下载到本地却可以点击进度条跳转进度,就说明下载方法中响应头没有支持浏览器断点续传
  4. 所以需要给请求头加个response.setHeader("Accept-Ranges", "bytes")来支持浏览器断点续传 

完整的下载文件的代码:文章来源地址https://www.toymoban.com/news/detail-789999.html

    public void downloadFile(String filename, String id, Boolean isImage, HttpServletResponse response) {
        log.info(this.getClass().getName() + "----in----" + "下载文件(downloadFile)" + "----");
        String savePath = getSavePath();
        String orginFilePath = savePath + "/" + id;
        File file = new File(orginFilePath);
    
        if (file.exists()) {
            InputStream inputStream = null;
            BufferedOutputStream outputStream = null;
            try {
                inputStream = new FileInputStream(file);
                byte[] buffer = new byte[1024];
                int byteread;
                try {
                    response.reset();
                    if (isImage) {
                        // 图片直接输出到浏览器
                        String formatType = id.substring(id.lastIndexOf(".") + 1, id.length());
                        response.setContentType("image/" + formatType);
                    } else {

                        response.reset();

                        response.setHeader("Accept-Ranges", "bytes");
                        // 附件执行下载任务
                        response.addHeader("Content-Disposition", "attachment;filename=" + URLEncoder.encode(filename, "UTF-8"));
//                        response.addHeader("Content-Disposition", "inline;filename=" + URLEncoder.encode(filename, "UTF-8"));
//                        response.setContentType("application/octet-stream");
                        response.setContentType("video/mp4");

                        // 设置视频文件长度
                        response.setContentLength((int) file.length());
                    }
//                    URL url = new URL("http://filem.free4inno.com/project/downloadFile?id=879");
//                    URLConnection conn = url.openConnection();
//                    inputStream= conn.getInputStream();

                    outputStream = new BufferedOutputStream(response.getOutputStream());
                    while ((byteread = inputStream.read(buffer)) != -1) {
                        outputStream.write(buffer, 0, byteread);
                    }
                    inputStream.close();
                    outputStream.flush();
                    outputStream.close();
                    log.info(this.getClass().getName() + "----out----" + "文件下载完毕" + "----");
                } catch (IOException e) {
                    e.printStackTrace();
                }
            } catch (FileNotFoundException e) {
                e.printStackTrace();
            } finally {
                try {
                    if (inputStream != null) {
                        inputStream.close();
                    }
                } catch (IOException e1) {
                    e1.printStackTrace();
                }
                try {
                    if (outputStream != null) {
                        outputStream.flush(); // 刷新一下
                        outputStream.close();
                    }
                } catch (IOException e1) {
                    e1.printStackTrace();
                }
            }
        } else {
            response.reset();
            try {
                response.sendError(404,"文件不存在");
                log.info(this.getClass().getName() + "----out----" + "文件不存在" + "----");
            } catch (UnsupportedEncodingException e) {
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }

到了这里,关于解决在tinymce编辑器插入视频到正文后不能跳转播放的问题的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Ueditor 富文本编辑器 插入 m3u8 和 mp4 视频(PHP)

    当前环境:PHP、Ueditor的版本是1.4.3 新的需求是,需要在Ueditor 富文本编辑器中,插入视频播放,并且视频格式有MP4,也有M3U8。 百度编辑器默认的是embed,需要修改下配置。 ueditor.all.js 和 ueditor.config.js 这两个文件要改一些东西,具体我这里就不展示了,网上有很多文章都有写

    2024年02月11日
    浏览(42)
  • vue3富文本编辑器的二次封装开发-Tinymce

    欢迎点击领取 -《前端开发面试题进阶秘籍》:前端登顶之巅-最全面的前端知识点梳理总结 专享链接 简介 1、安装:pnpm add tinymce @tinymce/tinymce-vue === Vue3 + tinymce + @tinymce/tinymce-vue 2、功能实现图片上传、基金卡片插入、收益卡片插入、源代码复用、最大长度限制、自定义表情包

    2024年02月07日
    浏览(37)
  • Monaco Editor教程(二十):在编辑器的某个特定位置插入自定义的dom内容,图片,表单,表格,视频

    哇咔咔,这是我的第20篇Monaco教程,写完这一篇会暂时休息一段时间,练练字,存存稿,读读书,顺便修修文章。 目前全网成系统的monaco中文专栏应该只有我这一个,欢迎评论区打脸。自结束了GitLab CI/CD的专栏后,我就一直在利用业余时间学习Monaco相关的知识,一是为了弥补

    2023年04月16日
    浏览(40)
  • vue2使用 tinymce富文本编辑器-图片上传、粘贴图片上传致服务器

    1.安装tinymce富文本编辑器插件 npm i tinymce npm i @tinymce/tinymce-vue 2.创建Editor.js文件 封装组件 以便使用 3.汉化包 (我放在public/tynymce/langs文件夹里) 4.vue组件中使用 本次记录重点在于 上传图片方法 需要区分工具栏中图片上传方法 以及 粘贴进去的图片也需要走上传方法。两个方

    2024年02月09日
    浏览(37)
  • 【vue】 Tinymce 富文本编辑器 不想让上传的图片转换成base64,而是链接

    前言:最近项目上需要使用富文本编辑器,觉得tinymce很不错就用了,具体怎么在项目中使用参考 【vue】 vue2 中使用 Tinymce 富文本编辑器 【vue】 Tinymce 数据 回显问题 | 第一次正常回显后面,显示空白bug不能编辑 这两天又遇到了新的问题,图片上传后是看地址栏发现是base64的

    2024年02月14日
    浏览(33)
  • tinymce4/5实现将word中内容(文字图片等)直接粘贴至编辑器中——利用插件tinymce-powerpaste-plugin

    TinyMCE是一款易用、且功能强大的所见即所得的富文本编辑器。同类程序有:UEditor、Kindeditor、Simditor、CKEditor、wangEditor、Suneditor、froala等等。 TinyMCE的优势: 开源可商用,基于LGPL2.1 插件丰富,自带插件基本涵盖日常所需功能(示例看下面的Demo-2) 接口丰富,可扩展性强,有

    2024年02月15日
    浏览(32)
  • Vue2 实现内容拖拽或添加 HTML 到 Tinymce 富文本编辑器的高级功能详解

    在 Web 开发中,Tinymce 被广泛应用作为富文本编辑器。除了基础的文本编辑功能,Tinymce 还提供了一系列高级功能,使得文本编辑更加灵活和便捷。本文将介绍如何在 Tinymce 中实现一些高级功能,并深入了解每个工具的使用。 Tinymce 是一款基于 JavaScript 的富文本编辑器,支持丰

    2024年02月03日
    浏览(45)
  • 在MD编辑器里插入20次方问题

    看了很多文章里面没写怎么插入20次方,最后在官网的一篇文章上看到了很详细的数学公式的插入。 大家肯定以为这样就可以了 效果 明显是不行的 使用{}把数字括起来就可以了。 1 20 1^{20} 1 20 在行内显示(就是与文字在一起) 另起一行居中显示

    2024年01月22日
    浏览(25)
  • 电脑视频编辑软件前十名 电脑视频编辑器怎么剪辑视频

    对于大多数创作者而言,视频后期工作基本都是在剪辑软件上进行的。一款适合自己的视频剪辑软件,能够节省出大量的时间和金钱成本,让剪辑师省钱又省心。那么有关电脑视频编辑软件前十名,电脑视频编辑器怎么剪辑视频的相关问题,本文将进行详细介绍。 接下来,作

    2024年02月11日
    浏览(43)
  • 免费全功能视频编辑器分享

    最基本的视频剪辑功能,文字、音频、画中画、变速、滤镜、贴纸、AI字幕,各种字体、特效都可以免费使用 还有许多实用功能,AI作图,可以通过输入咒语,来生成一些图片,作为视频配图使用 背景移除,可以一键移除背景,保留主体 。内置了提词器功能。安卓电脑都可以

    2024年01月22日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包