Web services WSDL是否具有异步web方法的概念?

Web services WSDL是否具有异步web方法的概念?,web-services,asynchronous,wsdl,Web Services,Asynchronous,Wsdl,我正在用WCF4.6.1编写一个API。客户端不由我编写,也不一定是在.NET中(可以是任何语言/平台) 有一个web方法可以执行一些可能需要很长时间的操作,因此我希望鼓励客户机异步调用它。我知道可以编写客户机来将web方法视为异步的(线程等),但是有没有一种方法可以将实际的web服务“强制”为异步操作?i、 WSDL是否有一种说法“这是一种异步方法” WSDL是否有一种说法“这是一个异步方法” 不,没有。客户端和服务之间的通信是同步的,即使在调用发生时客户端线程没有阻塞。这意味着调用是异步的,

我正在用WCF4.6.1编写一个API。客户端不由我编写,也不一定是在.NET中(可以是任何语言/平台)

有一个web方法可以执行一些可能需要很长时间的操作,因此我希望鼓励客户机异步调用它。我知道可以编写客户机来将web方法视为异步的(线程等),但是有没有一种方法可以将实际的web服务“强制”为异步操作?i、 WSDL是否有一种说法“这是一种异步方法”

WSDL是否有一种说法“这是一个异步方法”

不,没有。客户端和服务之间的通信是同步的,即使在调用发生时客户端线程没有阻塞。这意味着调用是异步的,而不是web服务方法是异步的

如果您提供了很好的文档说明,对于特定的操作,建议使用单独的线程,因为生成响应的速度很慢,您应该可以。需要构建客户端,并测试与web服务的集成。开发人员将注意到响应缓慢,并决定是否需要以非阻塞方式进行调用。甚至阻塞可能是他们的解决方案,你永远不知道,你认为缓慢的其他可能没有问题。 如果您想要“强制”客户端不阻塞响应,您可以使用例如WS-Addressing(我在这里假设您使用的是用于soapweb服务的WCF),其中您的客户端提供了一个回调端点,您可以在响应准备就绪时调用该端点。这使客户机有点复杂,因为它现在需要一个接收端点。但是客户机开发人员可能更喜欢选择调用服务的方式(以阻塞/非阻塞方式),而不是必须实现WS-Addressing规范