2009-09-23 14 views

Odpowiedz

16

Można spróbować czegoś takiego:

Set ServerXmlHttp = Server.CreateObject("MSXML2.ServerXMLHTTP.6.0") 
ServerXmlHttp.open "POST", "http://www.domain.com/page.asp" 
ServerXmlHttp.setRequestHeader "Content-Type", "application/x-www-form-urlencoded" 
ServerXmlHttp.setRequestHeader "Content-Length", Len(PostData) 
ServerXmlHttp.send PostData 

If ServerXmlHttp.status = 200 Then 
    TextResponse = ServerXmlHttp.responseText 
    XMLResponse = ServerXmlHttp.responseXML 
    StreamResponse = ServerXmlHttp.responseStream 
Else 
    ' Handle missing response or other errors here 
End If 

Set ServerXmlHttp = Nothing 

gdzie PostData jest dane chcesz opublikować (np pary nazwa-wartość, dokument XML lub cokolwiek).

Należy ustawić poprawną wersję pliku MSXML2.ServerXMLHTTP, aby pasowała do zainstalowanej wersji.

Otwarta metoda pobiera pięć argumentów, z których tylko dwie pierwsze są wymagane:

ServerXmlHttp.open Method, URL, Async, User, Password 
  • metoda: "GET" lub "POST"
  • URL: URL chcesz opublikować
  • asynchroniczny: domyślnie false (rozmowa nie wraca natychmiast) - wartość True dla asynchronicznego wywołania
  • użytkownika: nazwa użytkownika wymaganych do uwierzytelnienia
  • Hasło: hasło wymagane do uwierzytelnienia

Po powrocie połączenia właściwość statusu przechowuje stan HTTP. Wartość 200 oznacza OK - 404 oznacza, że ​​nie znaleziono, 500 oznacza błąd serwera itp. (Patrz http://en.wikipedia.org/wiki/List_of_HTTP_status_codes dla innych wartości).

Możesz otrzymać odpowiedź jako tekst (właściwość responseText), XML (właściwość responseXML) lub strumień (właściwość responseStream).

+4

"Musisz ustawić poprawną wersję pliku MSXML2.ServerXMLHTTP, aby pasowała do zainstalowanej wersji." lub po prostu użyj MSXML2.ServerXMLHTTP.3.0, który jest zawsze obecny na wszystkich platformach, które są obecnie obsługiwane. – AnthonyWJones

0

Musisz użyć jednego z istniejących obiektów serwera xmlhttp bezpośrednio lub możesz skorzystać z biblioteki, która ułatwia życie poprzez abstrakcję rzeczy o niskim poziomie.

Sprawdź ajaxed implementation z pobierania adresu URL

Wada: Musisz skonfigurować bibliotekę w celu uczynienia go pracy. Nie jestem pewien, czy jest to konieczne dla twojego projektu.

Powiązane problemy