基本信息
以下是所在類或對象的基本信息。
AMD:
require(["esri/portal/Portal"], (Portal) => { /* code goes here */ });
ESM:
import Portal from "@arcgis/core/portal/Portal";
類:
esri/portal/Portal
繼承: Portal > Accessor
自從:用於 JavaScript 4.0 的 ArcGIS API
用法說明
Portal 類是 ArcGIS Enterprise portal 的一部分,它提供了一種構建應用程序的方法,這些應用程序可以處理來自 ArcGIS Online 或 ArcGIS Enterprise portal 的內容。 ArcGIS Enterprise 是來自 Esri 的軟件,客戶可以部署 on-premises 或在雲中。 ArcGIS Online 是 Esri 的軟件即服務產品,它代表 GIS 即服務,並使用與 ArcGIS Enterprise 相同的技術實施。
門戶 API 允許應用程序開發人員使用 ArcGIS Online 或 ArcGIS Enterprise 門戶中托管的用戶、組和內容。該 API 允許開發人員構建支持使用 Web Map進行共享和協作的 Web、移動和桌麵應用程序。組織開發人員還可以使用 API 為其用戶構建自定義應用程序。
Portal 類提供當前用戶(匿名或登錄)看到的門戶視圖。它包括此門戶的名稱、徽標、特色項目和支持的協議(http 與 https)等信息。如果用戶未登錄,此調用將返回門戶的默認視圖。如果用戶已登錄,則返回的門戶視圖將特定於用戶所屬的組織。門戶的默認視圖取決於從用戶配置文件中獲取的用戶文化。
如果在加載 Portal 之前未設置 url,則 API 默認為 esriConfig.portalUrl 的 url。可能存在需要多個門戶實例的情況。在這些情況下,有幾個不同的選擇需要考慮。
- 在PortalItem並設置門戶的網址.
Layer.fromPortalItem({ portalItem: { id: "e691172598f04ea8881cd2a4adaa45ba", // autocastable to Portal portal: { url: "https://thePortalUrl" } } });
- 在將它們傳遞到PortalItem.portal屬性。
let portalA = new Portal({ url: "https://www.exampleA.com/arcgis" // First instance }); let portalB = new Portal({ url: "https://www.exampleB.com/arcgis" // Second instance }); let item = new PortalItem({ id: "e691172598f04ea8881cd2a4adaa45ba", portal: portalA // This loads the first portal instance set above }); item.load();
可以調用Portal實例上的when()方法來執行隻有在Portal加載後才能運行的進程。
// load the Portal and PortalQueryParams modules
require(["esri/portal/Portal",
"esri/portal/PortalQueryParams"
], function(Portal, PortalQueryParams) {
portal = new Portal();
// Setting authMode to immediate signs the user in once loaded
portal.authMode = "immediate";
// Once portal is loaded, user signed in
portal.load().then(function() {
console.log(portal);
// Create query parameters for the portal search
// This object autocasts as new PortalQueryParams()
let queryParams = {
query: "owner:" + portal.user.username,
sortField: "numViews",
sortOrder: "desc",
num: 20
};
// Query the items based on the queryParams created from portal above
portal.queryItems(queryParams).then(createGallery);
});
});
相關用法
- JavaScript ArcGIS Portal.fetchBasemaps用法及代碼示例
- JavaScript ArcGIS PortalItem.id用法及代碼示例
- JavaScript ArcGIS PortalItem.isLayer用法及代碼示例
- JavaScript ArcGIS PortalItem.addResource用法及代碼示例
- JavaScript ArcGIS PortalItem.destroy用法及代碼示例
- JavaScript ArcGIS PortalItem.portal用法及代碼示例
- JavaScript ArcGIS PortalUser.fetchItems用法及代碼示例
- JavaScript ArcGIS Portal.queryItems用法及代碼示例
- JavaScript ArcGIS PortalItem.fetchRelatedItems用法及代碼示例
- JavaScript ArcGIS Portal.createPrintTask用法及代碼示例
- JavaScript ArcGIS PortalQueryParams.categories用法及代碼示例
- JavaScript ArcGIS PortalGroup.fetchMembers用法及代碼示例
- JavaScript ArcGIS Portal.when用法及代碼示例
- JavaScript ArcGIS PortalUser.fetchGroups用法及代碼示例
- JavaScript ArcGIS Portal.fetchCategorySchema用法及代碼示例
- JavaScript ArcGIS Portal.createRouteTask用法及代碼示例
- JavaScript ArcGIS Portal.fetchFeaturedGroups用法及代碼示例
- JavaScript ArcGIS PortalItem.when用法及代碼示例
- JavaScript ArcGIS Portal.helperServices用法及代碼示例
- JavaScript ArcGIS PortalItem.type用法及代碼示例
- JavaScript ArcGIS PortalUser.fetchFolders用法及代碼示例
- JavaScript ArcGIS PortalGroup.fetchCategorySchema用法及代碼示例
- JavaScript ArcGIS PortalItem.fetchResources用法及代碼示例
- JavaScript ArcGIS Portal.queryUsers用法及代碼示例
- JavaScript ArcGIS Portal.createServiceAreaTask用法及代碼示例
注:本文由純淨天空篩選整理自arcgis.com大神的英文原創作品 Portal。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。