注意,使用ajax調用webservice時,儘可能使用ie瀏覽器,若是使用chrome或者是firefox瀏覽器,會出現如下異常:javascript
2013-8-25 17:02:30 com.sun.xml.internal.ws.transport.http.server.WSHttpHandler handleExchange
警告: Cannot handle HTTP method: OPTIONShtml
HTML頁面代碼:java
<html> <head> <title>經過ajax調用webservice服務</title> <script type="text/javascript"> var xhr; function send(){ if(window.XMLHttpRequest){ xhr=new XMLHttpRequest(); }else if(window.ActiveXObject){ var activexName=["MSXML2.XMLHTTP","Microsoft.XMLHTTP"]; for(var i=0;i<activexName.length;i++){ try{ xhr=new ActiveXObject(activexName[i]); break; }catch(e){ } } } //服務的地址 var wsUrl="http://127.0.0.1:6789/hello"; //請求體 var soap='<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:q0="http://jdf.com/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Body><q0:sayHello><arg0>aa</arg0> </q0:sayHello></soapenv:Body></soapenv:Envelope>'; //打開鏈接 xhr.open('POST',wsUrl,true); //從新設置請求頭 xhr.setRequestHeader("Content-Type","text/xml;charset=UTF-8"); //設置回調函數 xhr.onreadystatechange=_back; //發送請求 xhr.send(soap); } function _back(){ if(xhr.readyState==4){ if(xhr.status==200){ alert("OK"); } } } </script> </head> <body> <input type="button" value="肯定" </body> </html>