フェッチ :スコープ指定、グローバル

  • リリースバージョン: Australia
  • 更新日 2026年03月12日
  • 所要時間:4分
  • フェッチ API は、要求オブジェクトと応答オブジェクトを使用してリソースをフェッチするためのメソッドを提供します。

    Fetch API は、バックグラウンドスクリプトや、HTTP 呼び出しが可能な場所 (REST エンドポイントなど) で使用できます。フェッチ API を使用すると、ヘッダーや本文オプションなどを設定することで、単純なフェッチ要求と複雑なフェッチ要求の両方を行うことができます。

    この API は、外部 Web サイトからリソースを取得するためのさまざまなアクションを提供する一連の フェッチ API の一部です。完全な Fetch API コレクションには次のものが含まれます。

    フェッチアクションをサポートするために、システムプロパティ glide.hosts.allowlist を使用すると、フェッチメソッドがアクセスできるホストを制御できます。これは、 RestMessageV2 などの HTTP API や上記の API に適用されます。glide.hosts.allowlist の詳細については、「Available system properties」を参照してください。

    fetch:fetch(文字列、リソース、オブジェクトオプション)

    ネットワークからリソースをフェッチするプロセスを開始し、応答が利用可能になると履行される約束を返します。

    表 : 1. パラメーター
    名前 タイプ 説明
    resource 文字列またはオブジェクト 必須です。フェッチするリソース。
    指定できる値:
    • フェッチするリソースの URL を提供する文字列または文字列子を持つオブジェクト (URL オブジェクトを含む)。この URL は、ドキュメントの baseURI であるベース URL を基準にすることができます。
    • 要求をフェッチ:request()オブジェクト。
    オプション オブジェクト オプション。要求に適用するカスタム設定を含む RequestInit のフェッチ :スコープ対象、グローバル オブジェクト。

    デフォルト:要求はカスタマイズ設定なしで渡されます。

    表 : 2. 返される内容
    タイプ 説明
    オブジェクト 応答オブジェクトに解決される Promise。
    fetch() promise は、要求 URL の形式が正しくない、ネットワークエラーなどが原因で要求が失敗した場合にのみ拒否します。
    注:
    サーバーが 404 や 504 などのエラーを示す HTTP ステータスコードで応答した場合、 fetch() promise は却下されたとは見なされません。このインスタンスでは、 then() ハンドラーを使用して ok と status 応答をフェッチ: スコープ指定、グローバルproperties を確認します。
    次の例は、 要求をフェッチ:request() を使用して新しい Request オブジェクトを形成し、 fetch() してそのデータを取得する方法を示しています。コードの各部分がどのように使用されるかを簡単に説明します。
    async function fetchIncidents() {
        const url = 'https://your-instance.service-now.com/api/now/table/incident';
        const username = 'your_username';
        const password = 'your_password';
    
        // Create a Request object
        const request = new Request(url, {
            method: 'GET',
            headers: {
                'Content-Type': 'application/json',
                Authorization: 'Basic ' + btoa(`${username}:${password}`)
            }
        });
    
        // Fetch data and use response.json() to process it
        const response = await fetch(request);
        const data = await response.json(); // Parse the response to JSON
        console.log(data.result); // Log the incidents data to system logs
    }
    
    fetchIncidents();

    出力:

    [
        { "number": "INC0001", "short_description": "System outage" },
        { "number": "INC0002", "short_description": "Password reset request" }
    ]