WSHttpBinding.AllowCookies プロパティ
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
WCF クライアントが単一の Web サービスから送信されたクッキーを自動的に格納し、再送するかどうかを示す値を取得または設定します。
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
プロパティ値
クッキーの自動処理が必要な場合は true
、それ以外の場合は false
。
注釈
true
設定AllowCookiesは、クライアントが Cookie を使用する 1 つの Web サービスと対話している場合に役立ちます。 同じ Cookie を使用して複数のサービスにアクセスする場合は、 AllowCookies 各送信メッセージに false
Cookie ヘッダーを手動で追加する必要があります。 この処理方法を、次のコードで示します。
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();
}