社区
XML/XSL
帖子详情
关于用c开发axis客户端的问题!
lixiaosan
2007-03-27 10:21:47
现在已经用axis在server端部署了一个message类型的服务
client用java实现soap调用能正常
SOAPConnection.Call(..)
现在client想用c实现调用,初步设想用socket与server相连后,把soap消息发送到相应服务上。但是由于server端没有接收连接的程序,所以client在执行connect的时候不能成功,应该怎么做阿,请高手指教,谢谢!
...全文
337
5
打赏
收藏
关于用c开发axis客户端的问题!
现在已经用axis在server端部署了一个message类型的服务 client用java实现soap调用能正常 SOAPConnection.Call(..) 现在client想用c实现调用,初步设想用socket与server相连后,把soap消息发送到相应服务上。但是由于server端没有接收连接的程序,所以client在执行connect的时候不能成功,应该怎么做阿,请高手指教,谢谢!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
lixiaosan
2007-06-07
打赏
举报
回复
最后还是自己搞定了
cloudgamer
2007-04-14
打赏
举报
回复
学习
lixiaosan
2007-03-27
打赏
举报
回复
不可能吧?你的Web Services地址是哪里?
http://192.168.1.20:8080/axis/services/MessageService
我的client想用是c,所以如果要把soap消息发到server端,首先必须得和server端用socket相连把。
client在用socekt的connect(....)连接时,始终不能成功。请教
wtogether
2007-03-27
打赏
举报
回复
但是由于server端没有接收连接的程序
---------------------------------------------
不可能吧?你的Web Services地址是哪里?
wtogether
2007-03-27
打赏
举报
回复
创建一个socket
int s = socket(AF_INET, SOCK_STREAM, IPPROTO_IP);
然后设置地址和端口:
struct sockaddr_in a;
a.sin_family = AF_INET;
a.sin_port = htons(8080);
a.sin_addr.s_addr = inet_addr("192.168.1.20");
接着connect
connect(s, (struct sockaddr *)&a, sizeof(a));
之后发送这样一个数据包:
POST /axis/services/MessageService HTTP/1.1
Host: 192.168.1.20:8080
Content-Type: text/xml; charset=utf-8
Content-Length: [xml包的长度]
SOAPAction: "http://tempuri.org/GetMiscInfo"
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
.......
</soap:Envelope>
发送完就recv
如果connect失败,就用命令提示符,输入:telnet 192.168.1.20 8080回车,如果连接上了,应该就进入盲打输入区了
如果telnet可以连接上,而自己写的socket连接不上,那就要检查一下socket代码了
WIN32下,socket创建前需要WSAStartup的
XML/XSL
8,906
社区成员
22,678
社区内容
发帖
与我相关
我的任务
XML/XSL
XML/XSL相关问题讨论专区
复制链接
扫一扫
分享
社区描述
XML/XSL相关问题讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章