关于gsoap服务器程序

yekoufeng 2009-02-16 10:28:29
如题,我想写一个gsoap服务器程序,不知道怎么写,下了gsoap-win32-2.7 ,也不知道里面的东西怎么用,高手赐教下(说具体点操作),万分感谢!!!!
还有我写了这个服务器程序,我怎么让客户端去调用它,谢谢了.
...全文
159 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
yekoufeng 2009-03-03
  • 打赏
  • 举报
回复
但是现在想传结构体的,可是没搞定
yekoufeng 2009-02-26
  • 打赏
  • 举报
回复
自己搞定了
yekoufeng 2009-02-25
  • 打赏
  • 举报
回复
5楼能发个可以跑的程序我测试下么
yekoufeng 2009-02-24
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 binghuazh 的回复:]
用过来做webservice,说一下简单应用

服务器端先写一个.h文件,类似于:int ns__add(int num1,int num2,int* sum);
利用soapcpp2.exe 去生成client,server代码,具体可以查看一下soapcpp2的参数设置,如-c生成客户端代码,-s生成服务器端代码

服务器端分别调用(具体参考guide文档):
soap_init()
soap_bind()
soap_accept()
soap_serve()
soap_end()

另外还有实现具体service的服务程序
int ns__ad…
[/Quote]
非常感谢,我最近也在看开发文档,也遇到了很多问题,可以留个qq号嘛,可以讨论讨论.
vagrantisme 2009-02-23
  • 打赏
  • 举报
回复
Gsoap这东东,千万别用。太麻烦了。还容易出错。自己写通讯很简单的。
blingpro 2009-02-23
  • 打赏
  • 举报
回复
用过来做webservice,说一下简单应用

服务器端先写一个.h文件,类似于:int ns__add(int num1,int num2,int* sum);
利用soapcpp2.exe 去生成client,server代码,具体可以查看一下soapcpp2的参数设置,如-c生成客户端代码,-s生成服务器端代码

服务器端分别调用(具体参考guide文档):
soap_init()
soap_bind()
soap_accept()
soap_serve()
soap_end()

另外还有实现具体service的服务程序
int ns__add(struct soap *add_soap, int num1, int num2, int *sum)
{
*sum = num1 + num2;
return 0;
}

对于客户端
如果上面是用-s生成代码时,会生成一个wsdl文件,利用wsdl2h可以生成相对应的头文件,wsdl2h也有相关参数配置
client代码主要包括

int add( const char* server, int num1, int num2, int *sum ) //server是服务器提供服务的地址:端口
{
struct soap add_soap;
int result = 0;
soap_init(&add_soap);
// soap_set_namespaces(&add_soap, add_namespaces);

//该函数是客户端调用的主要函数,后面几个参数和add.h中声明的一样,前面多了3个参数,函数名是接口函数名ns__add前面加上soap_call_
soap_call_ns__add( &add_soap, server, "", num1, num2, sum );
if(add_soap.error)
{
printf("soap error:%d,%s,%s\n", add_soap.error, *soap_faultcode(&add_soap), *soap_faultstring(&add_soap) );
result = add_soap.error;
}
soap_end(&add_soap);
soap_done(&add_soap);
return result;
}

在主函数调用result = add(server, num1, num2, &sum); 就可以返回sum

这是一个简单例子,参考一下

不过我用个这个gsoap有点麻烦,特别是如果后来添加服务功能,会有很多link问题,因为他利用soapcpp2.exe ,wsdl2h.exe的工具去生成代码,有一个固定形式,不好添加功能(可能我理解不深入,没找到办法解决)

good luck!

yekoufeng 2009-02-18
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 oyljerry 的回复:]
gsoap-win32-2.7 这种东西都带有example,readme等,先看看...
[/Quote]

这些东西看了,可是还是没什么思路啊
oyljerry 2009-02-16
  • 打赏
  • 举报
回复
gsoap-win32-2.7 这种东西都带有example,readme等,先看看...
oyljerry 2009-02-16
  • 打赏
  • 举报
回复
客户端程序就是按照soap格式,发送soap协议包等到服务器端请求数据...

18,356

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧