wcf服务OperationContract中的cookie
是否可以读取wcf服务的OperationContract中的cookie?我试图在合约方法中读取 cookie 值,但它始终为空。如果我从 .aspx 页面读取相同的 cookie,则该值存在。有什么想法吗?
Is it possible to read cookies in the OperationContract of a wcf service? I am trying to read a cookie value in the contract method, but its always empty. If I read the same cookie from a .aspx page, the value is present. Any ideas?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
你如何接待他们? WCF 旨在与主机无关——即,您的服务在 IIS 外部托管时仍应正常工作。但是,有一种兼容模式可能会对您有所帮助:
默认值为 false,并禁用大多数 ASP.NET 功能,例如 HttpContext.Current。
How are you hosting them? WCF is intended to be host-neutral -- i.e. your services should still work when hosted outside of IIS. However, there is a compatibilty mode which might help you:
The default value is false and disables most ASP.NET features like HttpContext.Current.
BasicHttpBinding.AllowCookies 属性 可能会解决此问题,正如 Enrico 在 在 WCF 中管理共享 cookie (引用 此处)。这篇文章包含 web.config 片段:
但没有使用它的代码片段(该博客文章包含使用相同 cookie 和不同 Web 服务的更复杂解决方案的代码)。
======== 编辑 ==========
或者甚至 allowCookies=错误
The BasicHttpBinding.AllowCookies Property may fix this, as mentioned at the start of Enrico's blog post on Managing shared cookies in WCF (referenced here). The post includes the web.config fragment:
but no code fragment using it (the blog post has code for more complex solutions using the same cookies with different web services).
======== EDIT ==========
Or perhaps even allowCookies=false