小程序访问SOAP服务端 (WebService)

这个东西没有很多文章来写,所以自己爬了坑来稍微写一下给小白做参考哈

因为SOAP服务端的特殊,普通的post请求和普通的get请求无法请求,因为不是我写的服务端是不是有别的实现方法不清楚

但是也有比较麻烦的方案是用php或者java另外写一个转接访问


现在来说一下小程序直接访问的方案

connectToSoap: function () {
this.showLoading();
var that = this;
var method = '...';                                    <<<<<<<自填 接口中方法名
var wsdlurl = 'http://..../webservice.asmx';            <<<<<<<自填 想要访问的接口url地址
var tmpNamespace = 'http://....../';                   <<<<<<<自填 命名空间,可以用网页端直接访问你要请求的soap接口应该能看到
//以下为请求头的主体
    var tmpData= '<?xml version="1.0" encoding="utf-8"?>';
tmpData+= '<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ser="http://....../">' ; <<<<<<<自填tmpNamespace 的值填到这里
tmpData+= '<soapenv:Header/>';
tmpData+= '<soapenv:Body>';
 // 此处在Cabbage前加了ser: 起始都要加,里面的参数不管有几个,都得加,参考我的格式就可以,具体为什么就不求甚解了
        //w3cschool中有做解释, 点击打开链接 这是w3cschool地址有兴趣可以去看看
tmpData+= '<ser:Cabbage>' ;                                     <<<<<<<自填 这里的Cabbage就是上面method所填的域名位置:不是整条域名
tmpData+= '<ser:short>111</ser:short>';                      <<<<<<<自填 这里的short就是Cabbage域名访问所需要传的参数
tmpData+= '<ser:toght>111 </ser:toght>';                         <<<<<<<自填 这里的toght就是Cabbage域名访问所需要传的参数
tmpData+= '</ser:Cabbage>';                                     <<<<<<<自填  对应上面的Cabbage
tmpData+= '</soapenv:Body>';
tmpData+= '</soapenv:Envelope>';
wx.request({
url: wsdlurl,
data: tmpData,
method: 'POST', // OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE, CONNECT
header: {
'content-type': 'text/xml; charset=utf-8',
'SOAPAction': tmpNamespace + method,                 <<<<<<<自填 就是把前面的接口拼接起来 前面填了就不用管了按照我这么来就行了
},
// 设置请求的 header
success: function (res) {
// success 打印结果
          console.log(res)
},
fail: function () {
// fail
},
complete: function () {
that.cancelLoading();
}
})
}




复制粘贴后把自填的部分都填上,删掉自填的字样哈,要填的地方都给你标出来了

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值