SharePoint 中的 URL 和令牌
了解如何规划 URL,以及如何在 SharePoint 中使用 URL 标记。
SharePoint 中的 URL 类型
SharePoint 可根据指定协议(如 http:)或字符串中左斜线 (/) 的位置来分析 URL 字符串以确定 URL 的格式。 您可以根据具体的成员使用以下 URL 格式:
绝对 URL 指定完整路径并以协议开头。 例如,
http://
domain_or_server/[sites/
] Web_Site/Lists
/ List_Title/AllItems.aspx
。相对于域的 URL 基于域(可能为服务器的名称)地址并始终以正斜杠开头。 它指定从首要网站到文件名的完整路径。 例如,/[
sites/
] Web_Site/Lists
/ List_Title/AllItems.aspx
。相对于网站的 URL 基于网站对象的地址 ( SPWeb )。 它 不 以正斜杠开头,并指定从网站地址到文件名的完整路径。 例如,
Lists/
List_Title/AllItems.aspx
。相对于文件或文件夹的 URL 基于包含该文件的文件夹。 它不包含 任何 正斜杠。 它只指定文件的名称。 例如,
AllItems.aspx
。
注意
不存在“网站集相对 URL”这一概念;传递此类 URL 可能会导致代码无法运行。
图像 URL 的最佳做法
创建位于 %ProgramFiles%\Common Files\Microsoft Shared\Web 服务器扩展\15\TEMPLATE\LAYOUTS\1033\IMAGES 目录中的图像文件的 URL 时,请指定一个路径,该路径使用网站集的根网站,但该路径中不包含子网站。 例如,对图像文件使用 /_layouts/images/MyImage.gif 而不是 /MySubsite/_layouts/images/MyImage.gif。 这是因为,将通过不同的方式解析子网站 URL,具体取决于在何处使用它们。 如果您始终使用相对于根网站的 URL,则可以忽略这些变化。
SharePoint 中的 URL 标记
SharePoint 支持下表中列出的令牌,以便在 SharePoint 外接程序或场解决方案中使用。 此外,某些令牌只能在应用中使用。 有关它们的详细信息,请参阅 SharePoint 外接程序中的 URL 字符串和令牌。
在 SharePoint 开发的各种不同情景下,可在 URL 中使用本节表格中的标记,这些情景包括自定义操作和自定义页面上的链接。 在某些上下文中,部分标记无法使用。 仅可使用受限令牌列表的三个最重要的位置是应用的起始页、主机 Web 上的自定义操作以及应用部件的 Src 属性。 这三个位置在单独的列中标注,但这三者不构成可以使用标记的位置的详尽列表。
StartPage 列将指定是否可以在应用程序清单的 StartPage 元素中使用令牌。 自定义操作 列将指定是否可以在托管 Web 的自定义操作的 URL 中使用令牌。 应用程序部件 列将指定是否可以在应用程序部件的 Src 属性中使用令牌。
可在 URL 的开头使用的标记
标记 | 解析为 | StartPage | 自定义操作 | 应用程序部件 | 备注 |
---|---|---|---|---|---|
~ controlTemplates |
当前网站的 ControlTemplates 虚拟文件夹的 URL。 |
否 |
否 |
否 |
|
~layouts |
当前网站的 Layouts 虚拟文件夹的 URL。 |
否 |
否 |
否 |
|
~site |
当前网站的 URL。 |
否 |
否 |
是 |
|
~sitecollection |
当前网站的父网站集的 URL。 |
否 |
否 |
是 |
除非另有说明,否则下一个表中的这些令牌都不能用于应用部件的 Src 属性值的路径部分。 应用程序部件列是指这些标记在值的查询字符串部分的使用。
可以在 URL 中使用的标记
标记 | 解析为 | StartPage | 自定义操作 | 应用程序部件 | 备注 |
---|---|---|---|---|---|
{ControlTemplates} |
当前网站的 ControlTemplates 虚拟文件夹的 URL。 |
否 |
否 |
否 |
|
{ItemId} |
列表或库中的项目的 ID(整数)。 |
否 |
是 |
否 |
|
{ItemUrl} |
正在处理的项的 URL。 |
否 |
是 |
否 |
|
{Layouts} |
当前网站的 Layouts 虚拟文件夹的 URL。 |
否 |
否 |
否 |
|
{ListId} |
当前列表的 ID(一个 GUID)。 |
否 |
是 |
否 |
|
{RecurrenceId} |
定期事件的定期索引。 |
否 |
是 |
否 |
不支持将该标记用于列表项的上下文菜单中。 |
{Site} |
当前网站的 URL。 |
否 |
是 |
是 |
|
{SiteCollection} |
当前网站的父网站的 URL。 |
否 |
是 |
是 |
|
{SiteUrl} |
当前网站的 URL。 |
否 |
是 |
否 |
|
{Source} |
HTTP 请求 URL。 |
否 |
是 |
否 |