使用经典ASP中的winhttprequest.responsestream(与istream相关)?
-
25-10-2019 - |
题
有没有办法与 ResponseStream
财产 的 WinHttp.WinHttpRequest.5.1
在vbscript/asp中?至少是 IStream
接口(到达 ResponseStream
与IS相关)在一定程度上集成到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不了解。
解决方案
直接在脚本代码中,您无能为力。您所能做的就是将其传递给可能使用它的COM对象。
即使在VB6中,Istream也对VBScript非常陌生。
不隶属于 StackOverflow