Arbeiten Sie mit WinHttprequest.responStream (im Zusammenhang mit IStream) in klassischem ASP?
-
25-10-2019 - |
Frage
Gibt es eine Möglichkeit, mit dem zu arbeiten? ResponseStream
Eigentum von WinHttp.WinHttpRequest.5.1
in VBScript/ASP? Zumindest der IStream
Schnittstelle (zu welchem ResponseStream
ist verwandt) ist bis zu einem gewissen Grad in ASP integriert.
Oder ist das die Grenze dessen, was Sie im Skript erreichen können? Sie müssen Ihre eigene COM -Komponente rollen, wenn Sie weiter gehen möchten?
<html><body><h1>WinHttp</h1>
<%
Dim req, url, o
Set req = CreateObject( "WinHttp.WinHttpRequest.5.1" )
url = "http://www.google.de"
req.Open "GET", url, False
req.Send
Response.Write "<p>Hier kommt <code>" & url & "</code> :</p>"
Response.Write "<pre>"
Response.Write req.Status & " " & req.StatusText & VbNewLine
Response.Write req.GetAllResponseHeaders
Response.Write "</pre>"
' Response.Write Mid( req.ResponseText, InStr( req.ResponseText, "<div" ) )
' Set o = req.ResponseStream
' o = req.ResponseStream
' Same result for Write and BinaryWrite:
' VarType = 13, TypeName = Unknown
' ASP 0106 : 80020005; Typkonflikt; Unbehandelter Datentyp
' o = req.ResponseStream
' o = req.ResponseBody ' mit BinaryWrite
o = req.ResponseText ' mit Write
Response.Write "<p><code>IsObject " & IsObject(o) & "</code></p>"
Response.Write "<p><code>IsNull " & IsNull(o) & "</code></p>"
Response.Write "<p><code>VarType " & VarType(o)
Response.Write " " & TypeName(o) & "</code></p>"
Response.Write o
' Response.BinaryWrite o
%>
Beachten Sie, dass ich weiß, dass ich entweder verwenden kann req.ResponseText
oder req.ResponseBody
. Das Interesse besteht darin, zu wissen, ob Sie mit Sachen, die nur für c dokumentiert sind, weiter in das Skript gehen können kann sein (Spekulationen) Zugriff auf das Skript. Ich bin mir nicht mit Com aus.
Lösung
Es gibt nichts, was Sie mit einem iStream direkt im Skriptcode machen können. Alles, was Sie tun könnten, ist an ein COM -Objekt weiterzugeben, das es verwendet könnte.
Der iStream ist VBScript sehr fremd, selbst in VB6 muss man durch einige feurige Reifen springen, um damit zu arbeiten.