4

Web サービスを .ASMX から .SVC に切り替えていますが、そのうちのいくつかは HTTP 要求で渡された Cookie 値に依存しています。

WCF Web サービスでHttpContext.Currentは、null です。aspNetCompatibilityEnabledに設定することでこれを変更できますがtrue、この設定は、私が使用したい IIS7 の統合パイプライン モードと互換性がありません。

WCF は、Cookie にアクセスするクールで新しいモダンな方法を実装していますか?

4

2 に答える 2

3

WCF は、Cookie にアクセスするクールで新しいモダンな方法を実装していますか?

WCF には Cookie にアクセスする方法がありますが、それを「クールで新しいモダン」と呼ぶかどうかはわかりません。基本的に、サービス操作内でWebOperationContext.Current.IncomingRequest.Headers[HttpRequestHeader.Cookie]プロパティにアクセスできますCookie。これにより、クライアントから送信されたヘッダーの値が文字列として取得されます。その時点で、必要に応じて自由に解析できます。

于 2012-12-01T14:32:33.240 に答える
1

正しい答えに加えて、バインディングの allowCookies 属性を false に設定する必要があります。

true に設定されている場合、WCF は Cookie 管理を引き継ぎ、Cookie がコードに到達する前にヘッダーから削除します。MSDN フォーラムを参照してください

(申し訳ありませんが、まだコメントできません。)

于 2016-03-23T09:04:14.740 に答える