0

wcfサービスのOperationContractでCookieを読み取ることは可能ですか?コントラクトメソッドでCookie値を読み取ろうとしていますが、常に空です。.aspxページから同じCookieを読み取った場合、値は存在します。何か案は?

4

2 に答える 2

1

どのようにそれらをホストしていますか?WCFは、ホストに依存しないことを目的としています。つまり、IISの外部でホストされている場合でも、サービスは機能するはずです。ただし、次のような互換性モードがあります。

<system.serviceModel>
    <serviceHostingEnvironment aspNetCompatibilityEnabled="true"/>
</system.serviceModel>

デフォルト値はfalseで、HttpContext.CurrentなどのほとんどのASP.NET機能を無効にします。

于 2010-09-15T18:25:04.080 に答える
1

BasicHttpBinding.AllowCookiesプロパティは、WCFでの共有Cookieの管理に関するEnricoのブログ投稿(ここで参照)の冒頭で述べたように、これを修正する場合があります。投稿にはweb.configフラグメントが含まれています。

<system.ServiceModel>
    <bindings>
        <basicHttpBinding allowCookies="true">
    </bindings>
    <client>
        <endpoint address="http://localhost/myservice"
                  binding="basicHttpBinding"
                  contract="IMyService" />
    </client>
</system.ServiceModel>

ただし、それを使用するコードフラグメントはありません(ブログ投稿には、異なるWebサービスで同じCookieを使用するより複雑なソリューションのコードが含まれています)。

========編集==========

または、おそらくallowCookies = false

于 2012-03-03T12:10:43.617 に答える