Come potrei fare per creare una richiesta HTTP con dati POST in asp classico (non .net)?Come eseguire una richiesta POST HTTP in ASP?
risposta
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).
È 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.
"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