Można użyć tego składnika dla żądań HTTP, takich jak "post", "GET", "DELETE" itp
Aby utworzyć obiekt:
<%
Set objXML = Server.CreateObject("MSXML2.ServerXMLHTTP")
%>
Aby wysłać dane metodą "GET":
<%
objXML.Open "GET", "http://mvp.sos.state.ga.us/?some=querystring", false
objXML.Send ""
Response.Write objXML.responseText
%>
Należy zauważyć, że metoda Open ma 3 parametry: Metoda HTTP, URL, wywołanie asynchroniczne.
Należy zauważyć, że metoda wysyłania w "GET" ignoruje jego parametr. (W tym przypadku mamy do przekazywania parametrów za pośrednictwem adresu URL.)
Aby wysłać dane przy użyciu metody „POST”:
<%
objXML.Open "POST", "http://mvp.sos.state.ga.us/", false
objXML.Send "username=htbasaran&password=somepassword"
Response.Write objXML.responseText
%>
Uwaga dla „post”, które wysyłają sposób przechodzi parametrów w par klucz-wartość Format jak: key1 = wartość1 & klucz2 = = value2 & tak dalej ... lub wszelkie inne dane, takie jak XML, JSON, itp)
są to podstawy tego składnika. Jeśli potrzebujesz więcej informacji, możesz sprawdzić microsoft's docs page na zewnątrz.
Przykładowy kod do pobierania wartości formularzy i wysyłania ich za pomocą metody postu xmlhttp.
<%
' 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
%>
Ten kod jest uszkodzony. Parantheses nie powinny być wykonywane podczas wywoływania metod jako instrukcji. Również przykład "POST" powinien ustawić nagłówek Content-Type. – AnthonyWJones
Biorąc pod uwagę, że próbuję to zrobić, aby uzyskać dane z witryny zbudowanej za pomocą asp.net, czy jest to nadal możliwe? –
@AnthonyWJones w pewnym momencie masz rację, ale nie w ogóle. Pracuję ze stronami JScript Asp, więc ten kod jest prawidłowy dla JScript-a-aspa, ale VBScript. W każdym razie edytuję odpowiedź i usuwam paranthezy. – htbasaran