HTML5视频源是否有可能具有#



跟随不起作用,因为不允许使用"#"。其他角色还可以。

加载包含视频的页面时,不会显示视频。删除"#"后,它可以工作。

<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>

是否可以在视频文件中保留"#",以便视频文件名更具描述性。

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

为您的链接。

#是一个特殊字符,需要编码。您的文件名还包括&立即作为特殊字符突出。

一个完全安全和编码的版本看起来像

<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 编码的需求。

所以是的,这是可能的,但不建议。实际上有数千种方法可以在不使用保留字符的情况下保持文件名有意义。

相关内容

最新更新