Ecco il succo:Come si attiva una chiamata asincrona in asp classic e si ignora la risposta?
Ho una chiamata che voglio fare in asp, e non mi interessa la risposta. Voglio solo rispondere alla chiamata e non voglio che la pagina attenda la risposta. In base alla documentazione, dovrebbe essere simile a questa:
dim xmlhttp : set xmlhttp = Server.CreateObject("MSXML2.ServerXMLHTTP")
xmlhttp.Open "POST", url, true '' setting the 'asynchronous' option to 'true'
xmlhttp.setRequestHeader "Content-Type", "application/soap+xml; charset=utf-8"
xmlhttp.setRequestHeader "Content-Length", Len(XMLData)
xmlhttp.send XMLData
Questo funziona peachy quando si chiama in modo sincrono, ma quando ho capovolgere l'opzione ansynchronous a 'veri', incendi niente. Quello che ho potuto capire da internet è che gli utenti fanno qualcosa di simile al seguente:
While xmlhttp.readyState <> 4
xmlhttp.waitForResponse 1000
Wend
Sono pazzo a che questo non sembra davvero come una chiamata Asynchrous più anche se si è in attesa di una risposta?
mettere la linea xmlhttp.waitForResponse 1
subito dopo l'invio causerà la richiesta di sparare, ma ancora una volta, non voglio aspettare un secondo.
Qualche idea?
eccellente - grazie! – EdenMachine
Mi hai appena salvato dalla morte picchiando la testa contro la tastiera. Questo sembra essere un rimpiazzo diretto (non è necessario alcun refactoring?) Per "MSXML2.ServerXMLHTTP", ma eseguirò le regressioni solo per essere sicuro. – jerhewet