使用 Web AppBuilder 创建的应用程序可直接通过 URL 参数进行修改。URL 通常以 <your portal url>/apps/webappviewer/index.html? 开头,并且包含下面列出的一个或多个参数。要包含多个参数,请使用“与”号 (&) 分隔参数。例如:
http://<your portal url>/apps/webappviewer/index.html?id=6815e148ff1c4aee8dc7159816380a4d&webmap=9cf053ea602345ddae060010c470e615
警告:
3D 应用程序目前不支持 URL 参数。
对查询参数进行编码
必须对所有查询参数进行编码。编码使用 % 后跟其等效的十六进制数来替换所有无效的字符。
例如,以下是一串未编码的 URL 参数:http://<your portal url>/apps/webappviewer/index.html?find=380 new york street, redlands, ca
下面是同一个已编码的参数:http://<your portal url>/apps/webappviewer/index.html?find=380%20new%20york%20street,%20redlands,%20ca
Web 中提供了许多用于生成编码 URL 的免费站点和工具。例如,Albion Research Ltd. 拥有一个 URLEncode 和 URLDecode 页面。为方便阅读,将不对本主题中的其余示例进行编码。
打开保存的应用程序
要打开使用 Web AppBuilder 创建的已保存应用程序,请使用 id= 和该应用程序的唯一 ID。例如:
http://<your portal url>/apps/webappviewer/index.html?id=6815e148ff1c4aee8dc7159816380a4d
定义 web 地图
要定义 web 地图,请使用 webmap= 和 web 地图的唯一 ID。例如:
http://<your portal url>/apps/webappviewer/index.html?webmap=9cf053ea602345ddae060010c470e615
居中地图
要将地图放在特定位置的中央,可通过地理坐标 (x,y) 或投影坐标 (x,y,WKID) 设置 center=。
警告:
您可以使用逗号或分号作为分隔符。如果数字使用冒号作为小数位, 则使用分号。
地理坐标示例:
http://<your portal url>/apps/webappviewer/index.html?center=34,-50
投影坐标示例:
http://<your portal url>/apps/webappviewer/index.html?center=500000,5500000,102100
定义比例级别
要定义地图的比例级别,请使用 center= 和 level= 参数。level 参数接受地图服务的 REST 端点中列出的缓存比例的级别 ID。例如:
http://<your portal url>/apps/webappviewer/index.html?center=20,45&level=4
定义比例
要定义地图的比例,请使用 center= 和 scale= 参数。scale 参数接受地图服务的 REST 端点中列出的缓存比例。例如:
http://<your portal url>/apps/webappviewer/index.html?center=20,45&scale=4622324
定义范围
使用 extent= 定义地图范围。extent 参数以 MinX,MinY,MaxX,MaxY 的形式使用地理坐标 (GCS),以 MinX,MinY,MaxX,MaxY,WKID 的形式使用投影坐标 (PCS)。您可以使用逗号或分号作为分隔符。如果数字使用冒号作为小数位,则使用分号。
地理坐标示例:
http://<your portal url>/apps/webappviewer/index.html?extent=-117.20,34.055,-117.19,34.06
投影坐标示例:
http://<your portal url>/apps/webappviewer/index.html?extent=-13079253.954115,3959110.38566837,-12918205.318785,4086639.70193162,102113
查找要素位置以打开地图
要查找用于打开地图的位置或功能,请使用 find=。地图会自动缩放到最接近的匹配位置,并向地图中添加注释标记。find 参数接受单行地址、部分地址(例如仅城市或仅国家/地区)、地名、经纬度坐标以及可搜索图层中的要素(如宗地标识号 (PIN) 1916352001)。例如:
http://<your portal url>/apps/webappviewer/index.html?find=380 new york street, redlands, ca
警告:
必须对所有查询参数进行编码。
添加点
要向地图添加点,请使用 marker=<x>,<y>。以指定的 x 和 y 位置将点添加到地图中。还可以添加以下可选属性:
- <wkid> - 添加到地图的 x,y 坐标的空间参考。如果不包含 WKID,则使用 GCS 坐标。
- <encoded title> - 点弹出窗口的标题。如果不包含标题,则该弹出窗口将为空。
- <encoded icon URL> - 点符号。如果不包含符号,则使用蓝色标记符号。
- <encoded label> - 点符号旁的标注。
应考虑下列几点:
- 需要 <x> 和 <y>。
- 请确保对标题、图标和标注参数编码。
- 您必须按此顺序添加属性:marker=<x>、<y>、<wkid>、<encoded title>、<encoded icon URL>、<encoded label>。
- 您可以使用逗号或分号作为分隔符。如果数字使用冒号作为小数位,则使用分号。
- 使用空值。不要使用空格。例如,如果希望指定标注且不指定任何其他可选属性,则请将标注添加为第六个参数,同时其他参数为空值 (x;y;;;;label)。
- 如果希望地图放大(同时该点居中),则添加 level= 参数。
例如:
http://<your portal url>/apps/webappviewer/index.html?marker=-79.234826;38.147884;;Race start and finish;;Grindstone 100 Ultra Marathon&level=7
查询要素
要查询要素并缩放至该要素,您可使用下列选项之一:
- query=<layer name>,<field name>,<field value>
- query=<layer name>, <where clause>
- query=<layer id>,<field name>,<field value>
- query=<layer id>, <where clause>
警告:
所有查询参数均区分大小写且必须被编码。
由于图层名称可更改,强烈建议您使用图层 ID 进行查询。您可从 Web 地图 ID 中检索图层 ID,如下图所示。http://<your portal url>/sharing/rest/content/items/32a83775654249dcae6b8f2eff5d4072/data/?f=pjson
对于地图服务群组中的子图层,请将 <layer id_sublayer id> 用作图层 ID。
示例:
http://<your portal url>/apps/webappviewer/index.html?id=da80a448ac9246148da0811bddc18c94&query=Census_7501,STATE NAME,California
http://<your portal url>/apps/webappviewer/index.html?id=da80a448ac9246148da0811bddc18c94&query=Census_7501,STATE NAME='California'
http://<your portal url>/apps/webappviewer/index.html?id=da80a448ac9246148da0811bddc18c94&query=Census_7501,POP2000,33871648
http://<your portal url>/apps/webappviewer/index.html?id=da80a448ac9246148da0811bddc18c94&query=Census_7501,POP2000=33871648
切换区域设置
要切换应用程序语言,请使用 locale=<language code>。支持下列语言代码:ar、cs、da、de、en、el、es、et、fi、fr、he、it、ja、ko、lt、lv、nb、nl、pl、pt-br、pt-pt、ro、ru、sv、th、tr、zh-cn、vi、zh-hk 和 zh-tw。
例如:
http://<your portal url>/apps/webappviewer/index.html?locale=fr
对用户进行身份验证
要对非公共应用程序中的用户进行自动身份验证,请使用 token=<token>。采用此方法,用户则无需输入用户名和密码。例如:
http://<your portal url>/apps/webappviewer/index.html?token=utmVcabc_LNyEQ7OuuHD73em0MErLR_cudJTeSIdMFTnL0poF3shVBeng5ieWHyZn0kAA8nhUg7jseQxz3bi5crnFMMpldDiJLrtzmO3jEM-ZNVIUEh5_qMms-YgXUwGgFbeQlM9WaI3jwraUqwah0yCceBAxEkEIAEWvlBEDfVsYs3LZydORRcs2QIcdLas
控制打开移动布局的时间
该应用程序支持两种基于屏幕尺寸的布局样式。一种适用于桌面,另一种适用于移动设备。当屏幕显示的高度或宽度小于 600 像素时,将自动应用移动布局。但是,这可能会导致应用程序嵌入到网站中时出现异常行为。例如,网站中的弹出窗口会变成移动布局样式。要控制布局样式,请使用 mobileBreakPoint=<pixel number>。例如,只要屏幕尺寸不小于 300 像素,则可一直使用桌面样式。
http://<your portal url>/apps/webappviewer/index.html?mobileBreakPoint=300