FAQ
ArcGIS Maps SDK for JavaScript : デフォルトの環境設定

ナレッジ番号:5703 | 登録日:2024/01/16 | 更新日:2024/11/21

概要

ArcGIS Maps SDK for JavaScript には、開発者が明示的にコーディングすることにより変更可能なデフォルトの動作設定がいくつかあります。デフォルトの環境設定は基本的に esri/config モジュールに格納されています。デフォルトの環境設定を変更するためには、このモジュールを読み込み、プロパティを更新します。本 FAQ では esri/config の一部の設定をご紹介します。

API key

アプリケーションが使用する API key を設定することができます。
多くの機能を無償で利用することができますが、API key を設定することで一部使用できる機能が拡張されます(ベースマップが増えるほか、高度な解析が可能)。API key の詳細や取得方法はこちらをご確認ください。
require(["esri/config"], function (esriConfig,) {
esriConfig.apiKey = "ここにAPIキーを記載する";
} 

フォント

ArcGIS Maps SDK for JavaScript で表示されるフィーチャ レイヤーのラベルやテキスト シンボルで使用するフォントは、デフォルトで Esri がホストしている「https://static.arcgis.com/fonts」の中にあるフォントを使用します。デフォルト利用できるフォントの一覧は、Esri のガイドで確認できます。
デフォルトで提供されていないフォントを使用したい場合は、自身で pbf フォントを作成し Web サーバーで配信し、アプリケーション側で明示的に Web サーバーを指定することで、カスタムのフォントをラベルに使用できるようになります。詳細はこちらをご確認ください。
// *.pbf ファイルを独自に配信する URL
esriConfig.fontsUrl = "https://<サーバー名>/fonts";

ポータル サイト

ArcGIS Maps SDK for JavaScript はデフォルトでは ArcGIS Online を使用するように設定されています。ArcGIS Maps SDK for JavaScript を使用して Portal for ArcGIS に接続するには esri/config オブジェクトの portalUrl を使用して、ポータルの URL を設定する必要があります。
// Portal for ArcGIS の URL を設定
esriConfig.portalUrl = "https://<FQDN>/<ArcGIS WebAdptor 名>";

ログ

ArcGIS Maps SDK for JavaScript のアプリケーションのログメッセージを log プロパティから制御することができます。このプロパティには interceptors と level の2つのサブプロパティが含まれています。例えば log プロパティの level ではログメッセージのレベルを変更できます。指定されたレベル以上の重大度のメッセージがログに記録されます。
例えば、指定されたレベルが "none" の場合、ログは一切出力されません。デフォルトのレベルは "warn" です。
// ログレベルを info に設定
esriConfig.log.level = "info";

リクエスト

ArcGIS Maps SDK for JavaScript の request プロパティは、ライブラリと Web サーバー間の通信のさまざまな側面を制御できます。

httpsDomains

HTTPS をサポートするドメインのリストを設定します。これにより、指定されたドメインが HTTP で実行されている場合に、自動的に HTTPS を使用するようにリクエストが変更されます。
esriConfig.request.httpsDomains = ["example.com", "sample.org"];

proxyUrl

URL プレフィックスとそのリソースを設定したプロキシを定義します。アプリケーションと異なるドメインにホストされている Web サーバーとの通信時に使用されるプロキシを指定します。
esriConfig.request.proxyUrl = "/proxy/Java/proxy.jsp";

timeout

サーバーからの応答を待機する時間をミリ秒単位で設定します。デフォルトの値は 60000 ミリ秒に設定されています。
// タイムアウトを 30000 に設定
esriConfig.request.timeout = 30000;

trustedServers

クロスオリジンリクエストを送信する際に、認証情報(CookieやAuthorizationヘッダー)を含めるかを指定します。
esriConfig.request.trustedServers.push("https://example.com");

ジオメトリ サービス

様々なジオメトリ操作をサーバー側で行わせることができる geometryService で使用するデフォルトのサービス URL を変更できます。デフォルトでは ArcGIS Online の「https://utility.arcgisonline.com/arcgis/rest/services/Geometry/GeometryServer」を使用します。この設定を ArcGIS Server をインストールした際に自動的に構築されるジオメトリ サービスに変更したい場合は、geometryServiceUrl プロパティから設定します。
// ArcGIS Server のジオメトリ サービスの URL
esriConfig.fontsUrl = "https://<サーバー名>/arcgis/rest/services/Utilities/Geometry/GeometryServer";

kmlServiceUrl

KMLLayer を表示する際に、デフォルトで ArcGIS Online のユーティリティ サービス「https://utility.arcgis.com/sharing/kml」を使用するため、kml/kmz ファイルをアプリケーションで使用する場合は、インターネットにアクセスできる必要があります。
しかしながら、クライアントの端末がインターネットに接続できないかつ、使用する kml/kmz はインターネット上ではなく、イントラネットにホストしている場合があります。その場合は、esriConfig.kmlServiceUrl の設定をイントラネット内の Portal for ArcGIS  をインストールした際に、自動的に構築される KML ユーティリティ サービスに変更することができます。

// ArcGIS Server のジオメトリ サービスの URL
esriConfig.kmlServiceUrl = "https://<FQDN><Portal for ArcGIS の WebAdaptor 名>/sharing/kml";

ルート検索

ArcGIS Maps SDK for JavaScript でネットワーク解析を行う場合は、デフォルトで ArcGIS Online のネットワーク サービス「https://route-api.arcgis.com/arcgis/rest/services/World/Route/NAServer/Route_World」を使用します。
ArcGIS Enterprise に公開したカスタムのネットワーク サービスをアプリケーションで使用したい場合は、routeServiceUrl を設定します。
// ネットワーク サービスの URL
esriConfig.routeServiceUrl = "https://<サーバー名>/arcgis/rest/services/World/Route/NAServer/Route_World";

メタデータ

種類

製品