我有几个Web服务。其中一项服务用于检索会话标识(身份验证)。通过SessionInfo调用其他服务时,我传递此ID。 我想使用WCF而不是传统的Web方法。我怎样才能在几个wcf的客户端之间共享一个会话?如何在几个wcf的客户端之间共享一个会话?
0
A
回答
2
目前尚不清楚你的会话意味着什么。 WCF支持四种类型的会话:
- 传输会话 - 用于维护服务器和客户端之间会话的传输协议。例如:的net.tcp,Net.Pipe
- 可靠的会话 - 用于可靠的支持,以便在交付不可靠信道,如果客户端和服务器都在运行
- 安全会议 - 客户端只被认证为第一个呼叫,随后呼叫通过会话令牌进行认证。这个会话也被称为安全上下文。
- 应用程序会话 - 这对于IsInitiating和IsTerminating操作契约和PerSession实例的参数有意义。只有在使用任何前面的会话时,才能使用此会话=在BasicHttpBinding中不能使用它,因为它不支持传输,可靠和安全会话。
所有这些会话都与单个客户端代理和单个服务实例之间的通信有关。没有提供任何其他的东西。而且没有特殊的“会话”对象。
那么你究竟想达到什么目的?你打算取代使用ASP.NET会话的ASMX服务吗?在这种情况下,请检查sample。
编辑:
关于后续调用多个服务从第一服务接收单编号和重复使用此标识的想法应该被称为相关性研究(一个大的活动/交易)或联盟(安全相关的)不会话。
0
由于marc_s说你不能共享会话。
但是你可以做的是在你的WCF调用中传递会话ID作为参数,这样你就可以知道谁正在进行调用。
确保您在这些呼叫上使用加密。
0
推荐的方法是通过手动维护呼叫之间的会话状态。您可以按照自己的逻辑生成会话ID,并在每次调用时将会话信息加载/保存到数据库中。
通过这样做,你会支持的方式会议,这将使:
- 负载均衡
- 会话共享
- 故障切换
相关问题
- 1. CGI ::客户端之间的会话共享会话!
- 2. WCF服务之间的共享会话
- 3. ActiveMQ客户端:会话之间共享连接?
- 4. 在多个WKWebView之间共享会话
- 5. 两个域之间的会话共享
- 6. 在服务和客户端之间共享WCF设置
- 7. 在WCF客户端和服务之间共享合同
- 8. 在几个后端应用程序之间共享用户表
- 9. 如何在http和https之间共享一个asp.net会话
- 10. VS2010在多个WCF客户端之间共享SOAP 1.1服务的响应Cookie
- 11. 如何在几个账户之间共享Salesforce Einstein模型
- 12. 如何在ASP.NET中的多个子域之间共享会话?
- 13. 在多个域之间共享用户会话
- 14. 在客户端和Java后端之间共享UTC时间
- 15. 如何在客户端和服务器之间共享类?
- 16. 如何在客户端和自托管的WCF服务之间创建会话
- 17. 在几个类之间共享一个AVL树
- 18. 跨多个客户端服务器请求和多个服务器之间共享会话
- 19. 在Ruby和PHP之间共享会话
- 20. 在php和jsp之间共享会话
- 21. EJBObject在客户端共享?
- 22. 在两个WCF不同服务之间共享ASP.NET会话状态
- 23. TYPO3:如何在域之间共享会话/ cookie(每种语言一个)?
- 24. 如何在几个类之间共享对象
- 25. WSO2在两个租户之间共享同一个用户
- 26. 如何在访问Meteor网站的不同客户端之间共享会话?协作ToDos?
- 27. WAR之间的共享会话
- 28. 几个WCF服务可以共享一个公共BaseAddress吗?
- 29. .NET和Silverlight应用程序之间的共享WCF客户端代码?
- 30. 共享WCF服务和客户端之间的接口(标有w/ServiceContract)
我的问题是有点笨..我以其他方式解决问题。但是你的回答对我来说非常有趣和有用。 – RredCat 2010-11-02 15:31:57