VBS的HTTP请求

请求的返回方式

WEB方式请求

刷新当前页

开启一个新的IE窗口:提交表单<form target ="_blank"

XMLHTTP

XMLHTTP对象得到

SOAPTOOL

SOAPTOOL对象得到

请求的应用范围

WEB方式请求

IE

XMLHTTP

IE中,应用程序中

SOAPTOOL

IE中,应用程序中

请求在IE中的安全级别

WEB方式请求

任意

XMLHTTP

Win2003 SP1 默认可使用

SOAPTOOL

Win2003 SP1 默认加入信任站点可使用

请求组件的发布方式

WEB方式请求

不需

XMLHTTP

XML  DOM 3 /4/5/6安装包 IE6默认带XML  DOM 3

SOAPTOOL

SOAPTOOL 2.0 3.0 安装包

WEBGET方式请求ASPX

URL方式

http://localhost/ajax/s_get.aspx?Text1=wxd&Text2=lzm

WEB

<form id="get_form" action ="s_get.aspx" method ="get" >

    <input name="Text1" type="text" />

    <input name="Text2" type="text" /><br />

    <input id="Reset1" type="reset" value="reset" />

    <input id="Submit1" type="submit" value="submit" />

</form>

ASPX

{ s_get.aspx}

        Dim a = Request.QueryString("Text1")

        Dim b = Request.QueryString("Text2")

        Me.Response.Write(a + b)

        Me.Response.End()

        Me.Response.Write("你不应看到这条信息")

WEBPOST方式请求ASPX

WEB

<form id="get_form" action ="s_post.aspx" method="post" >

    <input name="Text1" type="text" />

    <input name="Text2" type="text" /><br />

    <input id="Reset1" type="reset" value="reset" />

    <input id="Submit1" type="submit" value="submit" />

</form>

ASPX

{ s_POST.aspx}

        Dim a = Request.Form.Item("Text1")

        Dim b = Request.Form.Item("Text2")

        Me.Response.Write(a + b)

        Me.Response.End()

        Me.Response.Write("你不应看到这条信息")

WEBPOST方式请求WebService

WEB

<form id="get_form" action ="WebService.asmx/HelloWorld" method="post" >

    <input name="Text1" type="text" />

    <input name="Text2" type="text" /><br />

    <input id="Reset1" type="reset" value="reset" />

    <input id="Submit1" type="submit" value="submit" />

 </form>

asmx

{WebService.asmx}

<WebMethod()> _

Public Function HelloWorld(ByVal Text1 As String, ByVal Text2 As String) As String

        Return Text1 + Text2

End Function

返回值

<?xml version="1.0" encoding="utf-8"?>

<string xmlns="http://tempuri.org/">string</string>

XMLHTTP使用POST方式请求ASPX

WEB

<input type=button name=wxd value="请求">

<script language=vbs>

dim aa 'xmlhttp对象

sub wxd_onclick '按钮单击事件

 set aa = createobject("microsoft.xmlhttp")

 aa.onreadystatechange=getref("aaa") '请求有响应时的回调程序

 aa.open "POST","s_POST.aspx",True '使用POST方式,导步请求

 

 '在HTTP协议中,指定请求的方式为POST ,setRequestHeader方法要在open后使用

 aa.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"

 aa.send "Text1=1&Text2=2"'开始请求,POST方式为数据的串方式

end sub

sub aaa '请求有响应时的回调程序

 select case aa.readystate

    case 0        '0:没初始化

    case 1        '1: 对象已建立,但尚未连接

    case 2        '2:正在加载文件中

    case 3        '3: 文件加载完成,正在检查正确性   

    case 4        '4:得到返回信息,可以使用接收

        msgbox aa.responsetext '显示返回的内容

 end select

end sub

</script>

ASPX

{ s_POST.aspx}

        Dim a = Request.Form.Item("Text1")

        Dim b = Request.Form.Item("Text2")

        Me.Response.Write(a + b)

        Me.Response.End()

        Me.Response.Write("你不应看到这条信息")

XMLHTTP使用GET方式请求ASPX

WEB

<input type=button name=wxd value="请求">

<script language=vbs>

dim aa 'xmlhttp对象

sub wxd_onclick '按钮单击事件

 set aa = createobject("microsoft.xmlhttp")

 aa.onreadystatechange=getref("aaa") '请求有响应时的回调程序

 aa.open "GET","s_get.aspx?Text1=wxd&Text2=lzm",true'使用GET方式,导步请求

 aa.send "" '开始请求,GET方式为空,POST方式为数据

end sub

sub aaa '请求有响应时的回调程序

 select case aa.readystate

    case 0       '0:没初始化

    case 1       '1: 对象已建立,但尚未连接

    case 2       '2:正在加载文件中

    case 3       '3: 文件加载完成,正在检查正确性        

    case 4       '4:得到返回信息,可以使用接收

        msgbox aa.responsetext '显示返回的内容

 end select

end sub

</script>

ASPX

{ s_get.aspx}

       Dim a = Request.QueryString("Text1")

        Dim b = Request.QueryString("Text2")

        Me.Response.Write(a + b)

        Me.Response.End()

        Me.Response.Write("你不应看到这条信息")

XMLHTTP使用POST方式请求WEBService

<input type=button name=wxd value="请求">

<script language=vbs>

dim aa 'xmlhttp对象

sub wxd_onclick '按钮单击事件

 set aa = createobject("microsoft.xmlhttp")

 aa.onreadystatechange=getref("aaa") '请求有响应时的回调程序

 

 

 aa.open "POST","WebService.asmx/HelloWorld",True '使用POST方式,导步请求

 

 '在HTTP协议中,指定请求的方式为POST

 aa.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"

 

 aa.send "Text1=1&Text2=2" '开始请求,POST方式为数据的串方式

end sub

sub aaa '请求有响应时的回调程序

 select case aa.readystate

    case 0

       '0:没初始化

       msgbox aa.readystate

    case 1

       '1: 对象已建立,但尚未连接

        msgbox aa.readystate

    case 2

       '2:正在加载文件中

        msgbox aa.readystate

    case 3

       '3: 文件加载完成,正在检查正确性   

        msgbox aa.readystate    

    case 4

       '4:得到返回信息,可以使用接收

        msgbox aa.responsetext '显示返回的内容

 end select

end sub

</script>

{WebService.asmx}

<WebMethod()> _

Public Function HelloWorld(ByVal Text1 As String, ByVal Text2 As String) As String

        Return Text1 + Text2

End Function

<?xml version="1.0" encoding="utf-8"?>

<string xmlns="http://tempuri.org/">string</string>

XMLHTTP使用SOAP 1.1方式请求WebService

WEB

<input type=button name=wxd value="请求">

<script language=vbs>

dim aa 'xmlhttp对象

sub wxd_onclick '按钮单击事件

 set aa = createobject("microsoft.xmlhttp")

 aa.onreadystatechange=getref("aaa") '请求有响应时的回调程序

 aa.open "POST","WebService.asmx",True '使用POST方式,导步请求

 

 '在HTTP协议中,指定请求的方式为SOAP1.1 ,setRequestHeader方法要在open后使用

 '-------------SOAP 1.1 的HTTP头-------------------------

-关于SOAP1.1/ 1.2 的头格式与返回格式,可参查看WEBSERVICE的WEB页说明

 aa.setRequestHeader "Content-Type", "text/xml; charset=utf-8"

 aa.setRequestHeader "Content-Length", "1024" '数值为请求的字节数,可以不写

 aa.setRequestHeader "SOAPAction", "http://tempuri.org/HelloWorld"

 '^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

 xml="<?xml version=""1.0"" encoding=""utf-8""?><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:Body>    <HelloWorld xmlns=""http://tempuri.org/""><Text1>wxd</Text1><Text2>lzm</Text2></HelloWorld></soap:Body></soap:Envelope>"

 msgbox xml

 aa.send xml '开始请求,POST方式为数据的串方式

end sub

sub aaa '请求有响应时的回调程序

 select case aa.readystate

    case 0        '0:没初始化

    case 1        '1: 对象已建立,但尚未连接

    case 2        '2:正在加载文件中

    case 3        '3: 文件加载完成,正在检查正确性   

    case 4        '4:得到返回信息,可以使用接收

        msgbox aa.responseText '显示返回的内容

 end select

end sub

</script>

asmx

{WebService.asmx}

<WebMethod()> _

Public Function HelloWorld(ByVal Text1 As String, ByVal Text2 As String) As String

        Return Text1 + Text2

End Function

返回值

<?xml version="1.0" encoding="utf-8"?>

<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:Body>

    <HelloWorldResponse xmlns="http://tempuri.org/">

      <HelloWorldResult>wxdlzm</HelloWorldResult>

    </HelloWorldResponse>

 </soap:Body>

</soap:Envelope

SOAPTOOL请求WebService

WEB

<input type=button name=wxd value="请求">

<script language=vbs>

sub wxd_onclick '按钮单击事件

set soapclient = CreateObject("MSSOAP.SoapClient30"'建立引用

'指定asmx的WSDL

soapclient.mssoapinit "http://localhost:1026/ajax/WebService.asmx?WSDL"

'调用WebService的方法HelloWorld,传参,并得到返回值

val= SoapClient.HelloWorld ("wxd","lzm")

msgbox val

end sub

</script>

asmx

{WebService.asmx}

<WebMethod()> _

Public Function HelloWorld(ByVal Text1 As String, ByVal Text2 As String) As String

        Return Text1 + Text2

End Function

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值