모든 SOAP 호출에서 HTTP 세션 유지

  • 릴리스 버전: Xanadu
  • 업데이트 날짜 2024년 08월 01일
  • 읽기1분
  • SOAP 클라이언트가 짧은 시간에 많은 호출을 수행하는 경우 모든 SOAP 호출에 대해 단일 HTTP 세션을 다시 사용할 수 있습니다.

    각 SOAP 호출은 만료될 때까지 유지되는 새 사용자 세션을 만듭니다. 단일 사용자 세션을 작성하고 모든 인바운드 SOAP 호출에 재사용하려면 다음 지침에 따라 SOAP 클라이언트를 개발하십시오.
    • HTTP::Cookies와 같은 모듈을 사용하여 "쿠키 항아리"를 만듭니다.
    • 각 요청 후 ServiceNow에서 반환된 쿠키를 저장합니다(HTTP::Cookies에 의해 자동으로 처리됨).
    • 이후의 각 요청과 함께 쿠키 항아리에 있는 쿠키를 다시 보냅니다.
    주:
    세션 회전 높은 보안 설정을 사용으로 설정한 경우 첫 번째 응답 헤더가 있는 서버에서 반환된 JSESSIONID가 즉시 무효화됩니다. 두 번째 응답에는 새 JSESSIONID가 포함됩니다.
    perl에서는 다음 코드를 사용하여 쿠키를 자동으로 저장하고 보낼 수 있습니다.
    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);