当WCF的服务使用session时,我们只有几种协议可供选择:
1. netTcp - 用这个协议是最好的,但有个重要问题是,IIS6不支持netTcp协议,所以要么我们用IIS7来host我们的WCF服务,要么就自己写一个host;
2. wsDualHttp - 因为Http协议天生不是双工通讯的,所以要想双工通讯,必须在客户端再启用一个端口来做回调端口,如果我们不在客户端的代理端做任何事情的话,很可能得到以下错误:
HTTP无法注册 URL http://+:80/Temporary_Listen_Addresses/08eee047-5225-4970-a777-084fe92620b9/。进程不具有此命名空间的访问权限(有关详细信息,请参阅http://go.microsoft.com/fwlink/?LinkId=70353)。

因为客户端默认要用Tcp 80端口来作为回调端口,可是作为网络程序,是需要本机的管理员权限才能注册的。
根据微软建议,需要做以下操作:

Running windows server 2003

自带httpcfg工具,直接运行
httpcfg set urlacl /u http://localhost:80 /aACL

相关文章:

  • 2021-05-26
  • 2021-05-18
  • 2021-09-15
  • 2022-02-09
猜你喜欢
  • 2021-06-16
  • 2021-05-09
  • 2021-10-12
  • 2021-11-21
  • 2022-12-23
  • 2021-05-27
相关资源
相似解决方案