使用ajax調用webservice

注意,使用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: OPTIONS
html


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>
相關文章
相關標籤/搜索