天天看點

ArcGIS API For JavaScript(6)之使用ArcGIS REST APIs實作地圖服務管理(查詢、啟動、停止、删除)

實作效果如下:

ArcGIS API For JavaScript(6)之使用ArcGIS REST APIs實作地圖服務管理(查詢、啟動、停止、删除)

可以在自己的app應用中操作地圖服務的啟動、停止、删除。

實作過程:

1、先生成token

ArcGIS API For JavaScript(6)之使用ArcGIS REST APIs實作地圖服務管理(查詢、啟動、停止、删除)

生成token的url:

http://localhost:6080/arcgis/admin/generateToken

可檢視官網生成token的文檔介紹 https://developers.arcgis.com/rest/enterprise-administration/server/generatetoken.htm

參數:

(1)username: 使用該token的使用者的使用者名

(2) password:使用者密碼

(3) Client:使用token的用戶端,提供三種類型:

          a、HTTP Referer:Web應用的URL,申請的token可由該應用的頁面使用;

          b、IP:申請的token隻能供指定IP位址的請求中使用;

          c、 Request IP:隻能由送出請求機器的ip使用該token,本文采用該方式。

(4) HTTP referer:如果Client選擇了HTTP referer,那麼這裡就需要輸入應用程式的位址;

(5) IP:如果Client選擇了IP,這裡就需要輸入IP位址;

(6) Expiration:過期時間 ,超過該時間token将失效。預設不填有效時間為60分鐘

由于需要輸入使用者和密碼,考慮到網絡安全問題,需注意以下幾點:

(1)不要直接在前端去請求位址,使用背景代碼請求

(2)使用者密碼可考慮加密處理,在背景進行解密。

(3)使用Post方式進行請求,高版本應該也不支援Get請求了

2、擷取地圖服務清單及服務啟停狀态

  • 擷取服務清單位址範例url:

NCGXQ為整個服務下的一個指定目錄,不指定時将擷取全部地圖服務

http://localhost:6080/arcgis/admin/services/NCGXQ

參數:

(1)f:json 代表傳回json格式

(2)token:xxx,上面第一步生成的token,這個token可以先緩存好,這樣在token失效前可以繼續使用,而不用每次都去請求擷取token

ArcGIS API For JavaScript(6)之使用ArcGIS REST APIs實作地圖服務管理(查詢、啟動、停止、删除)
  • 擷取服務啟停狀态url:

http://localhost:6080/arcgis/admin/services/NCGXQ/report

參數:

(1)f:json 代表傳回json格式

(2)token:xxx,上面第一步生成的token,這個token可以先緩存好,這樣在token失效前可以繼續使用,而不用每次都去請求擷取token

(3)parameters:['status']  過濾擷取包含狀态屬性的結果

(4)services:[{},{}]  填入上節擷取到的服務數組

傳回結果範例:其中realTimeState為目前服務的啟停狀态。

ArcGIS API For JavaScript(6)之使用ArcGIS REST APIs實作地圖服務管理(查詢、啟動、停止、删除)

3、啟動服務

啟動服務url:

http://localhost:6080/arcgis/admin/services/NCGXQ/gaoxinbpfw.MapServer/start

可拆解為:服務清單位址/服務名稱.服務類型/start

參數:

(1)f:json 代表傳回json格式

(2)token:xxx,上面第一步生成的token,這個token可以先緩存好,這樣在token失效前可以繼續使用,而不用每次都去請求擷取token

4、停止服務

停止服務url:

http://localhost:6080/arcgis/admin/services/NCGXQ/gaoxinbpfw.MapServer/stop

可拆解為:服務清單位址/服務名稱.服務類型/stop

參數:

(1)f:json 代表傳回json格式

(2)token:xxx,上面第一步生成的token,這個token可以先緩存好,這樣在token失效前可以繼續使用,而不用每次都去請求擷取token

5、删除服務

删除服務url:

http://localhost:6080/arcgis/admin/services/NCGXQ/gaoxinbpfw.MapServer/delete

可拆解為:服務清單位址/服務名稱.服務類型/delete

參數:

(1)f:json 代表傳回json格式

(2)token:xxx,上面第一步生成的token,這個token可以先緩存好,這樣在token失效前可以繼續使用,而不用每次都去請求擷取token

繼續閱讀