For Programmers: Free Programming Magazines  


Home > Archive > ASP > March 2008 > How to use HTTP protocol to get documents ?









You are viewing an archived Text-only version of the thread. To view this thread in it's original format and/or if you want to reply to this thread please [click here]

 

Author How to use HTTP protocol to get documents ?
fniles

2008-03-19, 6:57 pm

I need to send a request using HTTP Protocol and it will return to me some
replies, which can be an XML or HTML file. In ASP, how can I GET/POST
documents using the HTTP protocol ?
Thank you.


Anthony Jones

2008-03-20, 7:57 am

"fniles" <fniles@pfmail.com> wrote in message
news:%23JrxdugiIHA.4684@TK2MSFTNGP06.phx.gbl...
> I need to send a request using HTTP Protocol and it will return to me some
> replies, which can be an XML or HTML file. In ASP, how can I GET/POST
> documents using the HTTP protocol ?



Function GetText(sURL)

Dim oXHR : Set oXHR = Server.CreateObject("MSXML2.ServerXMLHTTP.3.0")
oXHR.open "GET", sURL, False
oXHR.send
If oXHR.status = 200 Then
GetText = oXHR.responseText
Else
GetText = Null
' Or if you prefer throw an error here
End If

End Function

This simply returns a string containing the response from the server.

You could create a similar GetXML function that an XML DOM. By changing
responseText to responseXML. It will only do so if the server responds with
a content type header indicating xml.

Function PostText(sURL, vntData, sContentType)

Dim oXHR : Set oXHR = Server.CreateObject("MSXML2.ServerXMLHTTP.3.0")
oXHR.open "POST", sURL, False
If Not IsNull(sContentType) Then oXHR.setRequestHeader "ContentType",
sContentType
oXHR.send vntData
If oXHR.status = 200 Then
PostText= oXHR.responseText
Else
PostText= Null
' Or if you prefer throw an error here
End If

End Function

Again you can mod to create a PostXML version.


--
Anthony Jones - MVP ASP/ASP.NET


fniles

2008-03-20, 6:57 pm

Thank you.
The MSXML2 only works with XML file, right ?
How about if I need to get other file other than XML file ?

Thanks

"Anthony Jones" <Ant@yadayadayada.com> wrote in message
news:%23ML3DFmiIHA.5412@TK2MSFTNGP02.phx.gbl...
> "fniles" <fniles@pfmail.com> wrote in message
> news:%23JrxdugiIHA.4684@TK2MSFTNGP06.phx.gbl...
>
>
> Function GetText(sURL)
>
> Dim oXHR : Set oXHR = Server.CreateObject("MSXML2.ServerXMLHTTP.3.0")
> oXHR.open "GET", sURL, False
> oXHR.send
> If oXHR.status = 200 Then
> GetText = oXHR.responseText
> Else
> GetText = Null
> ' Or if you prefer throw an error here
> End If
>
> End Function
>
> This simply returns a string containing the response from the server.
>
> You could create a similar GetXML function that an XML DOM. By changing
> responseText to responseXML. It will only do so if the server responds
> with
> a content type header indicating xml.
>
> Function PostText(sURL, vntData, sContentType)
>
> Dim oXHR : Set oXHR = Server.CreateObject("MSXML2.ServerXMLHTTP.3.0")
> oXHR.open "POST", sURL, False
> If Not IsNull(sContentType) Then oXHR.setRequestHeader "ContentType",
> sContentType
> oXHR.send vntData
> If oXHR.status = 200 Then
> PostText= oXHR.responseText
> Else
> PostText= Null
> ' Or if you prefer throw an error here
> End If
>
> End Function
>
> Again you can mod to create a PostXML version.
>
>
> --
> Anthony Jones - MVP ASP/ASP.NET
>
>



Anthony Jones

2008-03-20, 6:57 pm

"fniles" <fniles@pfmail.com> wrote in message
news:OvjSwzpiIHA.4436@TK2MSFTNGP02.phx.gbl...
> Thank you.
> The MSXML2 only works with XML file, right ?
> How about if I need to get other file other than XML file ?
>


No it will fetch any type of file.

Use responseText to retrieve a text based resource such as html.

Use responseBody to get an array of bytes to get a binary resource.

Use responseStream to get an implementation of IStream to pull large
resources

XMLHTTP only gets XML when 1) the response type is XML and it will build a
XML DOM which it exposes as responseXML and 2) when posting you supply an
XML DOM to the send method in which case it automatically adds the text/xml
content type and streams the xml from the DOM.



--
Anthony Jones - MVP ASP/ASP.NET


Sponsored Links







Also available: Server administration forum archive | Web Design forum archive | Software forum archive | Hardware reviews archive

Copyright 2008 codecomments.com