すべての SOAP 呼び出しにわたる HTTP セッションの保持

  • リリースバージョン: Australia
  • 更新日 2026年03月12日
  • 所要時間:1分
  • SOAP クライアントが短時間に多数の呼び出しを行う場合は、すべての SOAP 呼び出しに対して単一の HTTP セッションを再利用することができます。

    各 SOAP 呼び出しは、期限切れになるまで存続する新しいユーザーセッションを作成します。単一のユーザーセッションを作成してすべての受信 SOAP 呼び出しに再利用するには、次のガイドラインに従って SOAP クライアントを開発します。
    • HTTP::Cookies などのモジュールを使用して、「Cookie jar」を作成します。
    • 各要求の後に ServiceNow によって返された cookie を保存します (HTTP::Cookies によって自動的に処理されます)。
    • 後続の要求ごとに、Cookie jar 内の Cookie を再送信します。
    注:
    セッション・ローテーションの高セキュリティ設定を有効にした場合、最初の応答ヘッダーを使用してサーバーから返された JSESSIONID が直ちに無効になります。2 番目の応答には、新しい JSESSIONID が含まれます。
    perl では、次のコードで cookie を自動的に保存して送信できます。
    use HTTP::Cookies;
    
    #we want to store and re-send cookies
    my $cookies = HTTP::Cookies->new(ignore_discard => 1);
    
    my $soap = SOAP::Lite
        -> proxy('http://localhost:8080/glide/ecc_queue.do?SOAP');
    
    #Set the cookie jar
    $soap->transport->cookie_jar($cookies);