网站首页  汉语字词  英语词汇  考试资料  写作素材  旧版资料

请输入您要查询的考试资料:

 

标题 js调用webservice构造SOAP进行身份验证
内容
    这篇文章主要介绍了js调用webservice构造SOAP进行身份验证的相关资料,需要的朋友可以参考下
    本文实例为大家分享了js调用webservice构造SOAP进行身份验证的相关内容,注释清除,供大家参考,具体内容如下
    <html>
    <head>
     <title>无标题页</title>
     <script language="javascript" type="text/javascript">
    // <!CDATA[
    //define
    var xmlhttp;
    var value=new Array();
    var variable=new Array();
    //Show Response MSG.
    function handleStateChange()
    {
    var h=document.getElementById("Label1");
    if(xmlhttp.readyState==4)
    {
     if(xmlhttp.status==200)
     {
     alert(xmlhttp.responseText);
     h.innerHTML=xmlhttp.responseText;
     //h.innerHTML=xmlhttp.responseXML;
     }
     else if(xmlhttp.status==404)
     {
     h.innerHTML="<br>找不到请求的服务器资源!";
     }
    }
    else if(xmlhttp.readyState==0)
    {
     h.innerHTML="<br>未初始化!";
    }
    else if(xmlhttp.readyState==1)
    {
     h.innerHTML="<br>正在加载……!";
    }
    else if(xmlhttp.readyState==2)
    {
     h.innerHTML="<br>已经加载完成!";
    }
    else if(xmlhttp.readyState==3)
    {
     h.innerHTML="<br>正在和服务器交互";
    }
    else
    {
     h.innerHTML=xmlhttp.responseXML;
    }
    }
    //Get Request Data's length
    function getlen(str)
    {
     var bytesCount=0;
     for (var i = 0; i < str.length; i++)
     {
     var c = str.charAt(i);
     if (/^[u0000-u00ff]$/.test(c))  //匹配双字节
    {
     bytesCount += 1;
     }
     else
     {
     bytesCount += 2;
     }
     }
     return bytesCount;
    } 
    //Create XMLHttpRequest Object
    function createXMLHttpRequest()
    {
    if(window.ActiveXObject)
    {
     xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
    else if(window.XMLHttpRequst)
    {
     xmlhttp=new XMLHttpRequest();
    }
    } 
    //send Request By HTTP POST
    //实际上这段代码就是用JS构造一个字符串,而这个字符串就是通过浏览器查看WEBSERVICE时方法时出现的那段
    function RequestByPost(method,variable,value,url,_Namespace)
    {
     createXMLHttpRequest();
     var data;
     data = '<?xml version="1.0" encoding="utf-8"?>';
     data = data + '<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/">';
     //加了这段可以实现soap头
     //UserName ,Pwd这是我的SOAP验证形式,需替换
     data = data + "<soap:Header>"
     data = data + '<UserSoapHeader xmlns="http://tempuri.org/">'
     data = data + "<UserName>admin</UserName>"
     data = data + "<Pwd>faaaa</Pwd>"
     data = data + "</UserSoapHeader>"
     data = data + "</soap:Header>"
     data = data + '<soap:Body>';
     data = data + '<'+method+' xmlns="'+_Namespace+'">';
     for(var i=0;i<variable.length;i++)
     {
    data = data + '<'+variable[i]+'>'+value[i]+'</'+variable[i]+'>';
     }
     data = data + '</'+method+'>';
     data = data + '</soap:Body>';
     data = data + '</soap:Envelope>';
     xmlhttp.onreadystatechange=handleStateChange;
     xmlhttp.Open("POST",url, true);
     xmlhttp.SetRequestHeader ("Content-Type","text/xml; charset=utf-8");
     //xmlhttp.SetRequestHeader ("Content-Length",getlen(data));
     xmlhttp.SetRequestHeader ("SOAPAction",_Namespace+method);
     xmlhttp.Send(data);
     alert(data);
    }
     //WeatherReport Test:
     function Button2_onclick() {
      //方法名,参数名,参数值,服务URL,服务所使用命名空间
      RequestByPost("HelloWorld",[],[],"http://localhost:13267/SERVICES/WebService.asmx","http://tempuri.org/");
     }
    window.onload = function(){
    Button2_onclick();
    }
    // ]]>
     </script>
    </head>
    <body>
     <label id='Label1'>ss</label>
    </body>
    </html>
    以上就是本文的全部内容,希望对大家学习javascript程序设计有所帮助。
随便看

 

在线学习网考试资料包含高考、自考、专升本考试、人事考试、公务员考试、大学生村官考试、特岗教师招聘考试、事业单位招聘考试、企业人才招聘、银行招聘、教师招聘、农村信用社招聘、各类资格证书考试等各类考试资料。

 

Copyright © 2002-2024 cuapp.net All Rights Reserved
更新时间:2025/5/15 9:17:00