WSHttpBinding.AllowCookies Propriété

Définition

Obtient ou définit une valeur qui indique si le client WCF stocke et renvoie automatiquement les cookies envoyée par un service Web unique.Gets or sets a value that indicates whether the WCF client will automatically store and resend any cookies sent by a single web service.

public:
 property bool AllowCookies { bool get(); void set(bool value); };
public bool AllowCookies { get; set; }
member this.AllowCookies : bool with get, set
Public Property AllowCookies As Boolean

Valeur de propriété

true si le traitement automatique des cookies est requis, sinon, false.true if automatic cookies processing is required; otherwise, false.

Remarques

La définition de AllowCookies sur true est utile lorsqu’un client interagit avec un service Web qui utilise des cookies.Setting AllowCookies to true is useful when a client is interacting with one web service that uses cookies. Si vous accédez à plusieurs services avec le même cookie, définissez AllowCookies sur false et vous devrez ajouter manuellement l’en-tête de cookie à chaque message sortant.If you are accessing multiple services with the same cookie, set AllowCookies to false and you will have to manually add the cookie header to each outgoing message. Le code suivant montre comment procéder :The following code shows how to do this:

MyWebServiceClient client = new MyWebServiceClient();  
  
        using (new OperationContextScope(client.InnerChannel))  
        {  
            client.DoSomething();  
  
            // Extract the cookie embedded in the received web service response  
            // and stores it locally  
            HttpResponseMessageProperty response = (HttpResponseMessageProperty)  
            OperationContext.Current.IncomingMessageProperties[  
                HttpResponseMessageProperty.Name];  
            sharedCookie = response.Headers["Set-Cookie"];  
        }  
  
        MyOtherWebServiceClient otherClient = new MyOtherWebServiceClient();  
  
        using (new OperationContextScope(otherClient.InnerChannel))  
        {  
            // Embeds the extracted cookie in the next web service request  
            // Note that we manually have to create the request object since  
            // since it doesn't exist yet at this stage   
            HttpRequestMessageProperty request = new HttpRequestMessageProperty();  
            request.Headers["Cookie"] = sharedCookie;  
            OperationContext.Current.OutgoingMessageProperties[  
                HttpRequestMessageProperty.Name] = request;  
  
            otherClient.DoSomethingElse();  
        }  
  

S’applique à