用JavaScript调用WebService的示例

时间:2021-05-18

步骤如下:

下载微软HTC组件:http://msdn.microsoft.com/archive/default.asp?url=/archive/en-us/samples/internet/behaviors/library/webservice/default.asp

Web服务WSDL:

<?xmlversion="1.0"encoding="UTF-8"?>
<definitionsname="WS_SYSTEM_LOGIN_SELECT"targetNamespace="SCRM4U_SERVICE"xmlns:tns="SCRM4U_SERVICE"xmlns:wsdlns="SCRM4U_SERVICE"xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"xmlns:xsd="http://plexType>
</element>
</schema>
</types>
<messagename="WS_SYSTEM_LOGIN_SELECT.ExecuteSoapIn">
<partname="parameters"element="tns:WS_SYSTEM_LOGIN_SELECT.Execute"/>
</message>
<messagename="WS_SYSTEM_LOGIN_SELECT.ExecuteSoapOut">
<partname="parameters"element="tns:WS_SYSTEM_LOGIN_SELECT.ExecuteResponse"/>
</message>
<portTypename="WS_SYSTEM_LOGIN_SELECTSoapPort">
<operationname="Execute">
<inputmessage="wsdlns:WS_SYSTEM_LOGIN_SELECT.ExecuteSoapIn"/>
<outputmessage="wsdlns:WS_SYSTEM_LOGIN_SELECT.ExecuteSoapOut"/>
</operation>
</portType>
<bindingname="WS_SYSTEM_LOGIN_SELECTSoapBinding"type="wsdlns:WS_SYSTEM_LOGIN_SELECTSoapPort">
<soap:bindingstyle="document"transport="http://schemas.xmlsoap.org/soap/http"/>
<operationname="Execute">
<soap:operationsoapAction="SCRM4U_SERVICEaction/AWS_SYSTEM_LOGIN_SELECT.Execute"/>
<input>
<soap:bodyuse="literal"/>
</input>
<output>
<soap:bodyuse="literal"/>
</output>
</operation>
</binding>
<servicename="WS_SYSTEM_LOGIN_SELECT">
<portname="WS_SYSTEM_LOGIN_SELECTSoapPort"binding="wsdlns:WS_SYSTEM_LOGIN_SELECTSoapBinding">
<soap:addresslocation="http://192.168.2.148:8080/SCRM4U_SERVICE/servlet/aws_system_login_select"/>
</port>
</service>
</definitions>

演示代码:

<html>
<head>
</head>
<scriptlanguage="javascript">...
functiondoService(userid,password)...{

//service.useService({webservicelocation},{webserviceclassname})
service.useService("http://192.168.2.148:8080/SCRM4U_SERVICE/servlet/aws_system_login_select?wsdl","WS_SYSTEM_LOGIN_SELECT");
//service.Service.callService({webmethod},{inputparametersneeded})
service.WS_SYSTEM_LOGIN_SELECT.callService(showResult,"Execute",userid,password);
}

functionshowResult(result)...{

alert(result.value.W_V_USER_MEI);
}
</script>
<body>
<divid="service"style="behavior:url(./webservice.htc)"></div>
UserName:<inputtype="text"id="userid"name="userid">
<br/>
PassWord:<inputtype="text"id="password"name="password">
<br/>
<inputtype="button"value="callWebservice"onClick="doService(document.getElementById('userid').value,document.getElementById('password').value)"/>
</body>
</html>
注意:如果服务返回值类型是String,直接用result.value即可取到值。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章