在gSoap

时间:2016-12-01 13:21:00

标签: c++ web-services soap server gsoap

我正在使用gSoap,我遇到了类似的问题。我必须编程服务器。客户端应发送订阅请求(包括其URL)。服务器存储此信息,并回复客户端。这个完成了。但是,当事件发生时,服务器如何将通知发送到客户端? 我编写了其余的服务,服务器响应客户端的请求。但是我不知道如何完成剩下的程序。

我需要创建三种功能: 1)客户订阅的方法:

int __ns1__SubscribeToEventNotifications(
    struct soap* p_soap,
    _ns1__SubscribeToEventNotifications *ns1__SubscribeToEventNotifications,
    _ns1__SubscribeToEventNotificationsResponse,
    &ns1__SubscribeToEventNotificationsResponse
);

2)服务器通知订阅客户端的方法:

int __ns1__NotifyEventHappened(
    struct soap* p_soap,
    _ns1__EventHappened *ns1__EventHappened,
    _ns1__EventHappenedResponse &ns1__NotifyEventHappenedResponse
);

3)客户取消订阅的方法:

int __ns1__UnsubscribeFromEventNotifications(
     struct soap* p_soap,
     _ns1__UnsubscribeFromEventNotifications,
     *ns1__UnsubscribeFromEventNotifications,
     _ns1__UnsubscribeFromEventNotificationsResponse,
     &ns1__UnsubscribeFromEventNotificationssResponse
);

SOAP web service callback architecture?中,Glen Best写道:

  

“如果您知道客户端的SOAP端点地址,您可以将通知从服务器推送到客户端。客户端可以在原始SOAP请求有效负载内传输它的SOAP端点地址。稍后服务器可以向客户端发送SOAP请求。“

从服务器到客户端的请求是如何完成的?

提前致谢David Marcos

0 个答案:

没有答案