直接写soap调用webservice的问题

hillok 2015-07-06 08:21:59
我有一个 http://192.168.19.134/service/api.php?wsdl
做了简单的两个函数, feedback 和 add
我使用vb调用时,用soap toolkit很容易就可以调用了

Dim ss As New SoapClient30

ss.MSSoapInit "http://192.168.19.134/service/api.php?wsdl"
MsgBox ss.feedback("zzzz")
MsgBox ss.Add(34, 56)


但是想学习一下使用xmlhttp,通过soap来调用,应该怎么写?

        url = "http://192.168.19.134/service/api.php?wsdl"
oXMLHttp.Open "POST", url, False
oXMLHttp.setRequestHeader "Content-Type", "text/xml; charset=utf-8"
oXMLHttp.setRequestHeader "Content-length", Len(URLEncode(postData))
oXMLHttp.setRequestHeader "Accept-Language", "zh-CN"
oXMLHttp.setRequestHeader "SOAPAction", "http://192.168.19.134/service/api.php?wsdl"
oXMLHttp.setRequestHeader "Host", "192.168.19.134"
oXMLHttp.Send URLEncode(postData)



postdata
        postData = "<?xml version=""1.0"" encoding=""utf-8""?>"
postData = postData & "<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/"">"
postData = postData & "<soap:Body xmlns:m=""http://192.168.19.134/service/api.php?wsdl"">"
postData = postData & "<m:add>"
postData = postData & "<m:aa>1</m:aa>"
postData = postData & "<m:bb>2</m:bb>"
postData = postData + "</m:add>"
postData = postData + "</soap:Body>"
postData = postData + "</soap:Envelope>"




我这样写的消息发过去总是收到500的错误,到底是哪里错了呢?
...全文
175 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
xuzuning 2015-07-07
  • 打赏
  • 举报
回复
你的 soap 服务端支持 get 或 post 方式吗?
Lzq_1010 2015-07-07
  • 打赏
  • 举报
回复
大哥。这里好像是php的版块。。
hillok 2015-07-07
  • 打赏
  • 举报
回复
支持
引用 2 楼 xuzuning 的回复:
你的 soap 服务端支持 get 或 post 方式吗?

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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