答 组件网址 是标识组件的网址。
本部分介绍了向用户显示网址时使用的语法。
网址格式
组件网址原则上可以采用任何架构。您可能会遇到的一些常见骗术包括:
fuchsia-pkg
fuchsia-pkg
组件网址是一种软件包网址,用于定位分发在 Fuchsia 软件包中的组件。
其格式与软件包网址相同,不过
资源路径(相对于该资源包根目录)
找到一个组件清单。此路径的格式通常为 meta/<manifest_name>.cm
。
fuchsia-pkg://<repo-hostname>[/<pkg-name>[/<pkg-variant>][?hash=<pkg-hash>][#<path-to-manifest>]]
示例:
fuchsia-pkg://fuchsia.com/stash#meta/stash_secure.cm
fuchsia-boot
fuchsia-boot
组件网址用于在系统启动映像中定位组件。此架构用于确定在 fuchsia-pkg
解析器可用之前必须在早期启动期间解析的组件。其格式如下:
fuchsia-boot:///<path-to-manifest-in-bootfs>
示例:
fuchsia-boot:///#meta/driver_manager.cm
http(s)
http(s)
组件网址用于将网页标识为组件。这种
组件可作为网页在网页运行程序中执行,以便
示例。
示例:
https://en.wikipedia.org/wiki/Hippos
相对网址
组件框架支持部分相对网址(相对网址在 URL RFC 3986 中定义)。具体而言,组件框架支持指向分包组件的相对路径网址(以及包含组件清单路径的网址片段),以及仅包含片段的网址。
指向组件清单的路径是相对路径中允许的唯一内容
组件网址片段 (#meta/<component>.cm
)。如果 fragment 包含
或者相关部分包含网址查询参数
(?key=value
),则组件无法解析。
子打包组件的相对路径网址
系统会在运行时根据已知的“上下文”解析相对路径网址。对于
组件通过相对网址解析子组件时,上下文是
与父组件关联的解析器提供的值。网址 path
为
解释为声明的
子软件包
。
相对子软件包路径网址以相对软件包网址开头,格式如下:
<subpackage-path>#<path-to-manifest>
示例:
child#meta/default.cm
如需详细了解子软件包和子软件包组件,请参阅 Fuchsia 子软件包文档。
仅含片段的相对网址
仅在运行时,系统会根据 父组件的 package。仅限片段的网址具有以下特征 格式:
#<path-to-manifest>
示例:
#meta/child.cm
对于网址为以下的 fuchsia-pkg
父级组件:
fuchsia-pkg://fuchsia.com/package#meta/component.cm
相对网址将解析为:
fuchsia-pkg://fuchsia.com/package#meta/child.cm