VBScript/ASP でのResponseStream
プロパティを操作する方法はありますか? WinHttp.WinHttpRequest.5.1
少なくともIStream
(関連する) インターフェイスResponseStream
は ASP にある程度統合されています。
それとも、それがスクリプトで達成できる限界ですか? さらに先に進みたい場合は、独自の COM コンポーネントを作成する必要がありますか?
<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
%>
req.ResponseText
または のいずれかを使用できることがわかっていることに注意してくださいreq.ResponseBody
。興味深いのは、C 用にのみ文書化されているが、スクリプトにアクセスできる可能性がある (推測している)ものを使用して、スクリプトをさらに進めることができるかどうかを知ることです。私はCOMについて詳しくありません。