Udostępnij za pośrednictwem


Kończenie sesja protokołu SOAP

This feature will be removed in a future version of Microsoft SQL Server. Avoid using this feature in new development work, and plan to modify applications that currently use this feature.

Aby zakończyć sesja, żądanie musi określać sqlSession nagłówekId_sesji and Zakończenie atrybuty zestaw.The sessionId must identify a known sesja that the server that is in an accessible state at the server and the terminate atrybut must be zestaw to a value of true.

Jeśli nie ma żadnych sesja istniejących o określonym identyfikatorze, zwracany jest błąd protokołu SOAP z Zakończenie atrybutsqlSession nagłówka.

Jeśli żądanie jest wykonywana w innym kontekście zabezpieczeń lub punkt końcowy niż ta, która zainicjowała sesję, zwracany jest błąd protokołu SOAP, a sesja pozostaje niezmienione.

Po jawnie nie nowych żądań są akceptowane w sesja.Sesja jest zamknięta, po zakończeniu ostatniego partia w trakcie sesji.Nie jest tej samej serii w sesja, które faktycznie zażądano zakończenie.

Przykłady

W poniższym przykładzie pokazano, kończenie sesja protokołu SOAP.Do zakończenia sesja, klient protokołu SOAP wysyła żądanie na przykład następujące znane i prawidłowe Id_sesji wartość atrybutu a Zakończenie atrybut określona wartość wartość true:

<SOAP-ENV:Header
  xmlns:SOAP-ENV="https://schemas.xmlsoap.org/soap/envelope/"
  xmlns:sqloptions="https://schemas.microsoft.com/sqlserver/2004/SOAP/Options">
    <!-- enlist in an existing session, and terminate it --><sqloptions:sqlSession terminate="true" sessionId="AAAAADreaLE="/>
</SOAP-ENV:Header>

Żądania do zakończenia sesja może być puste lub mają treści wiadomości.Jeżeli podmiot, nagłówek zakończenie przetwarzania i zostało potwierdzone, niezależnie od błędów występujących na wykonanie metoda.

Serwer zwróci następnie potwierdzenia, na przykład następujące polecenie, aby wskazać, sesja została zakończona.

<SOAP-ENV:Header
  xmlns:SOAP-ENV="https://schemas.xmlsoap.org/soap/envelope/"
  xmlns:sqloptions="https://schemas.microsoft.com/sqlserver/2004/SOAP/Options">
    <!-- response to terminating an existing session --><sqloptions:sqlSession terminate="true" sessionId="AAAAADreaLE="/>
</SOAP-ENV:Header>

Aby upewnić się, że rozwiązanie zostało ukończone, klienci będą musiały zazwyczaj Skanuj w celu potwierdzenia odpowiedzi z serwera.Jeśli potwierdzenie nie zostanie odebrany w odpowiednim czasie po stronie klienta, klient powinien ponawianie żądania zakończenie.