From: fniles on
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.


From: Anthony Jones on
"fniles" <fniles(a)pfmail.com> wrote in message
news:%23JrxdugiIHA.4684(a)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


From: fniles on
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(a)yadayadayada.com> wrote in message
news:%23ML3DFmiIHA.5412(a)TK2MSFTNGP02.phx.gbl...
> "fniles" <fniles(a)pfmail.com> wrote in message
> news:%23JrxdugiIHA.4684(a)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
>
>


From: Anthony Jones on
"fniles" <fniles(a)pfmail.com> wrote in message
news:OvjSwzpiIHA.4436(a)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