2009-09-23 17 views

risposta

16

si può provare qualcosa di simile:

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 

dove PostData sono i dati che si desidera inviare (ad esempio coppie nome-valore, documenti XML o altro).

Sarà necessario impostare la versione corretta di MSXML2.ServerXMLHTTP in modo che corrisponda a ciò che è stato installato.

Il metodo aperto prende cinque argomenti, di cui sono tenuti solo i primi due:

ServerXmlHttp.open Method, URL, Async, User, Password 
  • Metodo: "GET" o "POST"
  • URL: l'URL che si desidera inserire l'annuncio
  • asincrona: il valore predefinito è false (la chiamata non restituisce immediatamente) - impostata su true per una chiamata asincrona
  • utente: il nome utente richiesto per l'autenticazione
  • Password: la password richiesta per l'autenticazione

Quando la chiamata ritorna, la proprietà status mantiene lo stato HTTP. Un valore di 200 significa OK - 404 significa non trovato, 500 significa errore del server ecc. (Vedere http://en.wikipedia.org/wiki/List_of_HTTP_status_codes per altri valori.)

È possibile ottenere la risposta come testo (proprietà responseText), XML (proprietà responseXML) o flusso (proprietà responseStream).

+4

"Sarà necessario impostare la versione corretta di MSXML2.ServerXMLHTTP in modo che corrisponda a ciò che è stato installato." o semplicemente utilizzare MSXML2.ServerXMLHTTP.3.0 che è sempre presente su tutte le piattaforme attualmente in supporto. – AnthonyWJones

0

È necessario utilizzare direttamente uno degli oggetti server xmlhttp esistenti oppure è possibile utilizzare una libreria che renda la vita un po 'più semplice estraendo le cose a basso livello.

Controllare ajaxed implementation di andare a prendere un URL

Svantaggio: È necessario configurare la libreria in modo da farlo funzionare. Non sono sicuro se questo è necessario per il tuo progetto.

Problemi correlati