Установка Arcgis JS API локально

0 голосов
спросил 22 Июль, 20 от Dido_kz (2,240 баллов) в категории Программные продукты Esri
редактировать 22 Июль, 20 от Dido_kz

всем привет, подскажите, кто сталкивался

установил Arcgis JS API локально, на сервере согласно по мануалу. Изменил имя хоста на доменное имя в двух местах: dojo.js & init.js

Но веб приложений в упор не видят не которые файлы с сервера (например:  MapView.js и WebMap.js)

dojo.js:24 GET https://esri/views/MapView.js net::ERR_NAME_NOT_RESOLVED

dojo.js:24 GET https://esri/WebMap.js net::ERR_NAME_NOT_RESOLVED

где что еще менять надо ?

исходник для проверки

<html>
  <head>
    <meta charset="utf-8" />
    <meta
      name="viewport"
      content="initial-scale=1,maximum-scale=1,user-scalable=no"
    />
    <!--
  ArcGIS API for JavaScript, https://js.arcgis.com
  For more information about the webmap-basic sample, read the original sample description at developers.arcgis.com.
  https://developers.arcgis.com/javascript/latest/sample-code/webmap-basic/index.html
  -->
<title>Test</title>

    <style>
      html,
      body,
      #viewDiv {
        padding: 0;
        margin: 0;
        height: 100%;
        width: 100%;
      }
    </style>

    <link
      rel="stylesheet"
      href="https://gis.kgp.kz/4.16/esri/themes/light/main.css"
    />

    <script src="https://gis.kgp.kz/4.16/dojo/dojo.js"></script>

    <script>
     
      require(["esri/views/MapView", "esri/WebMap", "esri/config"], function (
        MapView,
        WebMap,
        esriConfig
        ) {
       /************************************************************
         * Creates a new WebMap instance. A WebMap must reference
         * a PortalItem ID that represents a WebMap saved to
         * arcgis.com or an on-premise portal. 
         * ffffggggjjjddddaaaa
         * To load a WebMap from an on-premise portal, set the portal
         * url with esriConfig.portalUrl. 
         ************************************************************/
        esriConfig.portalUrl = "https://gis.kgp.kz/portal"; 
        var webmap = new WebMap({
            portalItem: {
            // autocasts as new PortalItem()
            id:"0ce4b182600b4ea78afdcda6ec8428e8"
          }
        });

        /************************************************************
         * Set the WebMap  instance to the map property in a MapView. 
         ************************************************************/
        var view = new MapView({
          map: webmap,
          container: "viewDiv"
        });
      });
    </script>
  </head>

  <body>
    <div id="viewDiv"></div>
  </body>
</html>

1 Ответ

0 голосов
ответил 22 Июль, 20 от Grigoriy (127,020 баллов)

Ну написано же:

Скопировать папку arcgis_js_api из архива в папку C:\inetpub\wwwroot\arcgis_js_api

Заменить:

[HOSTNAME_AND_PATH_TO_JSAPI]

На:

gis.kgp.kz/arcgis_js_api/library/4.16/

в двух файлах:

C:\inetpub\wwwroot\arcgis_js_api\library\4.16\init.js

C:\inetpub\wwwroot\arcgis_js_api\library\4.16\dojo\dojo.js

Протестировать, что они доступны снаружи:

https://gis.kgp.kz/arcgis_js_api/library/4.16/dojo/dojo.js

https://gis.kgp.kz/arcgis_js_api/library/4.16/

Скопировать файл test_js.html в папку C:\inetpub\wwwroot\ отсюда:

https://forum.esri-cis.ru/?qa=blob&qa_blobid=8018851540065601137

Проверить, что пример работает в режиме отладки (в консоле не должно быть красненького):

https://gis.kgp.kz/test_js.html

Собственно сам js_api можно уже использовать внутри.

А дальше откуда Вы его вызываете и как - уже другой вопрос.

Вот тут работает тоже самое, но js_api берёт оттуда же:

https://projectserver.dataplus.ru/test_js.html

оставил комментарий 23 Июль, 20 от Grigoriy (127,020 баллов)
Теперь сам пример поправить.
Request URL: https://gis.kgp.kz/4.16/dojo/dojo.js
Request Method: GET
Status Code: 404
оставил комментарий 23 Июль, 20 от Grigoriy (127,020 баллов)
Разрабам - открыть гугл и прочитать, что такое CORS.
И как его разрешить.
оставил комментарий 23 Июль, 20 от Grigoriy (127,020 баллов)
Дидар - пробуй сам, у тебя получится :)
Request URL: https://gis.kgp.kz/4.16/esri/themes/light/main.css
Request Method: GET
Status Code: 404

Request URL: https://gis.kgp.kz/4.16/dojo/dojo.js
Request Method: GET
Status Code: 404

Ты свой пример посмотри:
 <link
       rel="stylesheet"
       href="https://gis.kgp.kz/arcgis_js_api/library/4.16/esri/themes/light/main.css"
     />

     <script src="https://gis.kgp.kz/arcgis_js_api/library/4.16/dojo/dojo.js"></script>
оставил комментарий 23 Июль, 20 от Dido_kz (2,240 баллов)
редактировать 24 Июль, 20 от Dido_kz
спасибо Григорий
оставил комментарий 23 Июль, 20 от Dido_kz (2,240 баллов)
редактировать 24 Июль, 20 от Dido_kz
дядя Гриша ) крепкого Вам здоровья
Добро пожаловать на сайт Вопросов и Ответов, где вы можете задавать вопросы по GIS тематике и получать ответы от других членов сообщества.
...