我们有以下链接:http://mvp.sos.state.ga.us/

与其创建一个数据库来复制MVP页面中的信息,我们不打算使用我们自己的表单,而是在幕后,使用名为MSXML2.ServerXMLHTTP的组件将信息发送到上方的站点以获取结果。

不幸的是,我对该组件及其使用方法一无所知。

有人会友好地给我一些关于如何使用我们自己的...将信息发送到上面的网站并将结果返回到我们的表格的指示吗?

我们基本上是想让用户输入名字的首字母,姓氏,县,出生日期。

谢谢

最佳答案

您可以将此组件用于HTTP请求,例如“ POST”,“ GET”,“ DELETE”等。

创建对象:

<%
    Set objXML = Server.CreateObject("MSXML2.ServerXMLHTTP")
%>


要使用方法“ GET”发送数据:

<%
    objXML.Open "GET", "http://mvp.sos.state.ga.us/?some=querystring", false
    objXML.Send ""
    Response.Write objXML.responseText
%>


请注意,Open方法具有3个参数:HTTP方法,URL,异步调用。

请注意,“ GET”上的Send方法将忽略其参数。 (在这种情况下,我们通过URL传递参数。)

要使用方法“ POST”发送数据:

<%
    objXML.Open "POST", "http://mvp.sos.state.ga.us/", false
    objXML.Send "username=htbasaran&password=somepassword"
    Response.Write objXML.responseText
%>


对于“ POST”,请注意,Send方法以键值对格式传递参数,例如:key1 = value1&key2 = value2&so = on ...或任何其他数据,例如XML,JSON等)

这些是此组件的基础。如果需要更多信息,可以签出microsoft's docs page

获取表单值并使用xmlhttp post方法发送它们的示例代码。

<%
    ' getting form values
    my_uname = Request.Form("username")
    my_pword = Request.Form("password")

    ' creating object
    Set objXML = Server.CreateObject("MSXML2.ServerXMLHTTP")

    ' sending variables to an external site
    objXML.Open "POST", "http://www.sitename.com/login.asp", false
    objXML.Send "username=" & my_uname & "&password=" & my_pword

    ' Assuming that successful login will return response "Ok"
    ' writing the result to the client.
    if objXML.responseText="Ok" then
        Response.Write "Login Successful!"
    else
        Response.Write "Login Failed!"
    end if
%>

关于asp-classic - 如何使用MSXML2.ServerXMLHTTP从另一个站点获取数据?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11388714/

10-11 17:58