Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
WCF回调如何在HTTP上工作?_Wcf_Http - Fatal编程技术网

WCF回调如何在HTTP上工作?

WCF回调如何在HTTP上工作?,wcf,http,Wcf,Http,据我所知,在HTTP中,客户端连接到服务器并请求数据。服务器无法调用客户端。如果是这种情况,那么WCF回调如何工作 谢谢 JoeWCF双工HTTP客户端(例如,当使用wsDualHttpBinding时)也将启动服务器,以便在“真实”服务器回叫时侦听其请求 因此,仅举一件事,NAT无法实现这一点。当与HTTP传输一起使用时,服务器会调用客户端。为了使其正常工作,客户端必须位于公共端点上,因此需要适当地配置防火墙和您所拥有的东西 发件人: 由于其无连接的性质,HTTP不能用于回调,因此不能通过Ba

据我所知,在HTTP中,客户端连接到服务器并请求数据。服务器无法调用客户端。如果是这种情况,那么WCF回调如何工作

谢谢

Joe

WCF双工HTTP客户端(例如,当使用
wsDualHttpBinding
时)也将启动服务器,以便在“真实”服务器回叫时侦听其请求


因此,仅举一件事,NAT无法实现这一点。

当与HTTP传输一起使用时,服务器会调用客户端。为了使其正常工作,客户端必须位于公共端点上,因此需要适当地配置防火墙和您所拥有的东西

发件人:

由于其无连接的性质,HTTP不能用于回调,因此不能通过BasicHttpBinding或WSHttpBinding使用回调。Windows通信基金会为NETTCP绑定和NETAMAMEDPIPENBING提供回调支持,因为底层传输是双向的。为了支持HTTP上的回调,Windows通信基金会提供WSDualHutpBand,它实际上设置了两个HTTP通道:一个用于从客户端到服务的调用,一个用于从服务到客户端的调用。 和来自WSDualHttpBinding的参考 :

此绑定要求客户端具有公共URI,该URI为服务提供回调端点。这是由ClientBaseAddress提供的。双重绑定向服务公开客户端的IP地址。客户端应该使用安全性来确保它只连接到它信任的服务


嗨@JeremyMcGee,我正在研究这些话题。我使用一个简单的控制台应用程序作为客户机。我从您的回答中了解到,客户端必须有一个端点才能命中服务器,我的问题是,有没有任何方法可以查看此端点是什么?这本质上是无用的,因为您想要执行客户端回调的原因是因为客户端位于firewall@user1034912当然但对于两个端点都处于控制之下的B2B情况,它可能很有用。对于消费品而言,情况并非如此。请记住,所有这些东西都是在websockets和其他东西出现之前就已经有10年历史了。