web services的问题

web services的问题

问题描述:

小弟接了个活,其他都OK了,到最后,那边给提供了一个验证防伪码的接口,是web services

接口内容如下:
接口地址:http://www.yesno.com.cn/DAC/DacQuery.asmx

查询方法:

SproCodeQuery(string factoryCode, string requestCode, string sproCode, out string sysState, out string productCode, out string queryNumber, out string queryDate, out string productInfo1, out string productInfo2, out string productInfo3)

参数备注:

factoryCode 企业编码为“58”

requestCode 请求验证码为“8DDCFF3A80F4189CA1C9D4D902C3C909”,不定期更换

sproCode 16位防伪码

out sysState 系统返回状态 “001” 为真码,其余为假码,

out productCode 产品编码 ,如果系统返回状态为 “001”,产品编码有效,否则无效

out queryNumber 暂不用

out queryDate暂不用

out productInfo1暂不用

out productInfo2暂不用

out productInfo3暂不用

测试用16位防伪码 产品编码

3412897247215401 硒鼓EP-22

0000006193641376 PG-40

0000046076308646 BCI-24BK

我用ajax提交,返回怎么也不对,不指点是我提交错了还是返回不对。求大虾们指点一二
我的提交方式:
var xml='';
xml+='<?xml version="1.0" encoding="utf-8"?>'+'\n';
xml+=''+'\n';
xml+='soap:Body'+'\n';
xml+=''+'\n';
xml+='58'+'\n';
xml+='8DDCFF3A80F4189CA1C9D4D902C3C909'+'\n';
xml+='0000006193641376'+'\n';
xml+=''+'\n';
xml+='/soap:Body'+'\n';
xml+='/soap:Envelope'+'\n';
//alert(xml);
xhr.open("POST", "http://www.yesno.com.cn/DAC/DacQuery.asmx", true);
xhr.onreadystatechange = suggest;
xhr.send(xml);

这么解析的:
var objXml = xhr.responseXML;
var aa=objXml.getElementsByTagName("soap:Body")[0];
alert(aa);
[b]问题补充:[/b]
有,是个object

[code="java"]<br> function AJAXPost(){<br> var xml=&#39;&#39;; <br> xml+=&#39;&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;&#39;+&#39;\n&#39;; <br> xml+=&#39;<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/">&#39;+&#39;\n&#39;; <br> xml+=&#39;<a href="soap:Body">soap:Body</a>&#39;+&#39;\n&#39;; <br> xml+=&#39;<SproCodeQuery xmlns="http://tempuri.org/">&#39;+&#39;\n&#39;; <br> xml+=&#39;<factoryCode>58</factoryCode>&#39;+&#39;\n&#39;; <br> xml+=&#39;<requestCode>8DDCFF3A80F4189CA1C9D4D902C3C909</requestCode>&#39;+&#39;\n&#39;; <br> xml+=&#39;<sproCode>0000006193641376</sproCode>&#39;+&#39;\n&#39;; <br> xml+=&#39;</SproCodeQuery>&#39;+&#39;\n&#39;; <br> xml+=&#39;<a href="/soap:Body">/soap:Body</a>&#39;+&#39;\n&#39;; <br> xml+=&#39;<a href="/soap:Envelope">/soap:Envelope</a>&#39;+&#39;\n&#39;;</p> <pre><code> var options = { type: &quot;POST&quot;, url: &quot;http://www.yesno.com.cn/DAC/DacQuery.asmx&quot;, data :xml, dataType :&quot;html&quot;, contentType :&quot;text/xml;charset=utf-8&quot;, success: function(msg){ alert( &quot;Data Saved: &quot; + msg ); }, error : function(msg,textStatus, errorThrown){ alert( &quot;Error : &quot; + textStatus ); alert(this); } }; jQuery.ajax(options); } &lt;/script&gt;[/code] </code></pre> <p>我用jQuery提交了下,可以返回结果; 是不是你的 </p> <p>dataType :&quot;html&quot;,<br> contentType :&quot;text/xml;charset=utf-8&quot;,</p> <p>这个两个设置不对啊?</p>

var objXml = xhr.responseXML;
alert(objXml);

这个有数据吗?