标签: serverxmlhttp

如何防止ServerXMLHTTP自动跟踪重定向(HTTP 303请参阅其他响应)?

我正在使用ServerXMLHTTP来执行HTTP POST.返回的响应是重定向(具体为303见其他).ServerXMLHTTP会自动跟随此重定向,但这会导致身份验证失败,因为它不会传播原始请求的Authorization标头.

有没有办法可以阻止自动重定向(或者确保重新发送Authorization标头)?

post redirect http serverxmlhttp winhttp

4
推荐指数
1
解决办法
5567
查看次数

如何使用XMLHttp Object为经典ASP中的POST设置字符集?

我必须在经典ASP中使用XMLHttp对象,以便通过HTTP从服务器到服务器将一些数据发送到另一台服务器:

sURL = SOME_URL

Set oXHttp = Server.CreateObject("Msxml2.XMLHTTP")

oXHttp.open "POST", sURL, false 
oXHttp.setRequestHeader "Content-Type", "application/x-www-form-urlencoded;charset:ISO-8859-1;"

sPost = SOME_FORM_DATA

oXHttp.send(sPost)
Run Code Online (Sandbox Code Playgroud)

我被告知(由消费服务器的维护者),根据我是否使用来自Windows Server 2000(IIS 5)或Windows Server 2003(IIS 6)的代码,他获得了Latin-1(Windows 2000 Server)或UTF-8(Windows Server 2003)编码数据.

我没有找到任何属性或方法来设置我必须发送的数据字符集.它是否依赖于某些Windows配置或脚本(asp)设置?

encoding serverxmlhttp character-encoding asp-classic

3
推荐指数
2
解决办法
1万
查看次数

在经典的asp中将utf-8转换为iso-8859-1

我的网站现在纯粹以UTF-8工作,但为了使用serverXMLHTTP发送短信,我需要在发送之前将我的消息从UTF-8转换为ISO-8859-1.

情况与此并行:

a.asp:

<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head><body>
<form method="post" action="b.asp">
<input type text name="message" value="æøå and ÆØÅ"><br>
<input type=submit>
</body>
Run Code Online (Sandbox Code Playgroud)

然后是b.asp

<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
</head><body>
<%=konvert(request("message"))%><br>
</body>
<%
Function Konvert(sIn)
    Dim oIn : Set oIn = CreateObject("ADODB.Stream")
    oIn.Open
    oIn.CharSet = "UTF-8" 
    oIn.WriteText sIn
    oIn.Position = 0
    oIn.CharSet = "ISO-8859-1"
    Konvert = oIn.ReadText
    oIn.Close
End Function
%>
Run Code Online (Sandbox Code Playgroud)

在这个展示中,我希望在b.asp中看到相同的字符串,因为我发送了一个a.asp,但是我得到了这个:

æøå and ÆØÅ
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

ado serverxmlhttp character-encoding asp-classic

2
推荐指数
1
解决办法
3万
查看次数

从另一个网站调用经典asp中的ServerXMLHTTP帖子接收xml

我正在将ASP网页的两面写到ASP网页对话中,其中原始网页将信息推送到接收网页,接收网页然后处理它并发回响应.原始网页必须使用以下代码开始对话:

url = "www.receivingwebsite.com\asp\receivingwebpage.asp
information = "UserName=Colt&PassWord=Taylor&Data=100"
Set xmlhttp = server.Createobject("MSXML2.ServerXMLHTTP")
xmlhttp.Open "POST", url, false
xmlhttp.setRequestHeader "Content-Type", "text/xml"
xmlhttp.send information
Run Code Online (Sandbox Code Playgroud)

...然后以某种方式接收页面中的ASP代码必须能够看到发送的信息.我已经尝试了我能想到的一切.信息不在请求对象querystring或表单数组中(因为内容类型是text/xml),我尝试将整个请求对象domdocument通过其load()和/或loadxml()方法传递给它.

无论我做什么,我都找不到信息,但我知道它正在被发送,因为当我更改内容类型时application/x-www-form-urlencoded,我可以在request.form数组中看到它.

那么当内容类型是text/xml什么时,我的信息在哪里?

xml serverxmlhttp asp-classic

1
推荐指数
1
解决办法
8724
查看次数

MSXML2.ServerXMLHTTP访问被拒绝错误

我收到间歇性的"msxml3.dll错误'80070005'访问被拒绝." 错误.该对象始终回发到同一个域.我不知道为什么它有时会起作用,为什么它会在其他时候失败.这是经典ASP - VBScript

set xmlhttp = CreateObject("MSXML2.ServerXMLHTTP") 
xmlhttp.open "POST", "http://xxxx.com/GetCacheValue.aspx", false
xmlhttp.send "" 
strCaptchaText = xmlhttp.responseText 
set xmlhttp = nothing
Run Code Online (Sandbox Code Playgroud)

vbscript serverxmlhttp asp-classic

1
推荐指数
2
解决办法
1万
查看次数

有人能告诉我为什么我在经典 asp 中没有收到对 MSXML2.ServerXMLHTTP.6.0 的响应吗?

有人能告诉我为什么我没有得到回应吗?

<%
    RssURL = "https://api.twitter.com/1/statuses/user_timeline.rss?screen_name=nrcGOV"

    Set xmlHttp = Server.CreateObject("MSXML2.ServerXMLHTTP.6.0")
    xmlHttp.setProxy 2, "www.proxy.mydomain.com:80"
    xmlHttp.Open "Get", RssURL, false
    xmlHttp.Send()
    myXML = xmlHttp.ResponseText
    myXMLcode = xmlHttp.ResponseXML.xml

    response.Write(myXML)
    response.Write(myXMLcode)
    response.Write("hey")
%>
Run Code Online (Sandbox Code Playgroud)

我正在尝试从 twitter api 获取 rss feed xml 到我的服务器上,在那里我可以使用客户端代码对其进行操作。有人可以告诉我为什么我没有使用此代码获取提要吗?

xml rss response serverxmlhttp asp-classic

1
推荐指数
1
解决办法
5675
查看次数