以 file:// 或 application:// 开头的 URI 是什么?

以 file:// 或 application:// 开头的 URI 是什么?

使用 Linux,我不止一次看到以 和 开头的文件和应用程序的file://URI application://

这些 URI 是什么以及如何使用它们?

答案1

引用维基百科:

文件 URI 方案是 RFC 1630 和 RFC 1738 中指定的 URI 方案,通常用于从自己的计算机中检索文件。

RFC 1738:

文件 URL 方案用于指定可在特定主机上访问的文件。与大多数其他 URL 方案不同,此方案并不指定可通过 Internet 普遍访问的资源。

文件 URL 的形式为: file://host/path

其中 host 是可访问 的系统的完全限定域名path,并且path是 形式的分层目录路径directory>/directory/.../name

作为特殊情况,host可以是字符串localhost或空字符串;这被解释为“正在解释 URL 的机器”。

大多数浏览器都支持file://URI,您可以通过在浏览器地址栏中使用它们来打开磁盘中的文件。

我不认为application://URI 是标准化的 - 维基百科、IETF 站点和 IANA 站点的 RFC 中没有关于它的信息,因此此 URI 方案的使用是特定于应用程序的,并且是为应用程序内部需求而设计的。

答案2

在 GNU/Linux 下,它是“应用程序”/“扩展”的“mimetypes”,配置起来很容易,但对于初学者来说可能很复杂

例如,如果您想配置“TeamSpeak 3 Server”协议,仅针对当前用户,您可以进行以下操作

1 - Install the teamspeak3 client in /opt/TeamSpeak3/Client


2 - Edit the file ~/.local/share/applications/mimeapps.list


3 - Add under [Default Applications] , the follow line

    x-scheme-handler/ts3server=teamspeak.desktop

    and now save the file


4 - Create the "~/.local/share/applications/teamspeak3.desktop" file , just open a text editor , add the follow lines

    [Desktop Entry]
    Encoding=UTF-8
    Version=3
    Type=Application
    Terminal=false
    Name=TeamSpeak
    Exec=/opt/TeamSpeak3/Client/ts3client_runscript.sh %u
    Path=/opt/TeamSpeak3/Client
    Icon=/opt/TeamSpeak3/Icon/TeamSpeak3.png
    StartupNotify=false
    StartupWMClass=TeamSpeak
    X-KDE-SubstituteUID=false

5 - Update the mime database of the current user , with the command line

    $ update-mime-database $HOME/.local/share/mime

6 - Try to open a url with protocol for example , some like ->

    ts3server://8.9.36.132?port=9112

现在网络浏览器,询问您是否要使用“TeamSpeak”打开,如果单击“打开”,则工具“TeamSpeak3 Client”必须连接到该服务器。

简要说明

Mime 协议,它的路线

x-方案处理程序/

在同一行

“ts3服务器=”

它是网络协议

“ts3server://”

在同一行

teamspeak.desktop

确定“应用程序”可以打开该协议

桌面入口

[桌面入口]

编码=UTF-8

版本=3

类型=应用

终端=假

名称=团队发言

Exec=/opt/TeamSpeak3/Client/ts3client_runscript.sh %u

路径=/opt/TeamSpeak3/客户端图标=/opt/TeamSpeak3/Icon/TeamSpeak3.png

StartupNotify=false StartupWMClass=TeamSpeak X-KDE-SubstituteUID=false

好的,你看到上面的条目了,其中最重要的是

“Type” -> 应该是此类事物的应用程序

“终端”->确定终端是否显示

“名称”-> 桌面菜单中的“标题”/“名称”

"Exec" -> 确定app的脚本/二进制路径

“路径”->确定绝对路径,用wine和dosbox造成麻烦

“图标”->确定App的图标

注意Exec行末尾存在%u没有带有该参数的双引号,系统可以抓取 用于稳定连接

相关内容