以下操作无效,因为不允许使用“#”。其他字符都可以。
加载带有视频的页面时,视频不显示。删除“#”后,它可以工作。
<video id="video" defaultMuted autoplay playsinline controls>
<source src="/media/movie/Crash,()<>{}@&*&(_) Course #15.mp4" type="video/mp4">
Your browser does not support the video tag.
</video>
是否可以在视频文件中保留“#”,以使视频文件名更具描述性。
答案 0 :(得分:1)
RFC 3986将某些字符定义为保留字符,因此您不能直接使用它们。但是,您可以对URL进行“百分比编码”,它应该可以正常工作。
! # $ & ' ( ) * + , / : ; = ? @ [ ]
%21 %23 %24 %26 %27 %28 %29 %2A %2B %2C %2F %3A %3B %3D %3F %40 %5B %5D
Space is %20.
这将导致
%2Fmedia%2Fmovie%2FCrash%2C%28%29%3C%3E%7B%7D%40%26%2A%26%28_%29%20Course%20%2315.mp4`
或更简单
/media/movie/Crash%2C%28%29%3C%3E%7B%7D%40%26%2A%26%28_%29%20Course%20%2315.mp4
获取链接。
答案 1 :(得分:0)
#是一个特殊字符,必须为encoded。您的文件名还包含&,该字符立即以特殊字符突出显示。
一个完全安全且经过编码的版本看起来像
<video id="video" defaultMuted autoplay playsinline controls>
<source src="/media/movie/Crash%2C%28%29%3C%3E%7B%7D%40%26%2A%26%28_%29%20Course%20%2315%0A.mp4" type="video/mp4">
Your browser does not support the video tag.
</video>
通常,您应仅使用字母数字字符,并在文件名和链接中添加下划线(_)或连字符(-)。这样可以确保整个文件系统之间的最大兼容性,并且不需要URL编码。
是的,有可能,但不建议这样做。实际上,有数千种方法可以在不使用保留字符的情况下使文件名有意义。