Hier ist das Wesentliche:Wie feuere ich einen asynchronen Aufruf in asp classic und ignoriere die Antwort?
Ich habe einen Anruf, den ich in asp machen möchte, und ich interessiere mich nicht für die Antwort. Ich möchte nur den Anruf tätigen und möchte nicht, dass die Seite auf die Antwort wartet. Gemäß der Dokumentation, sollte es in etwa so aussehen:
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
Diese peachy funktioniert, wenn synchron aufrufen, aber wenn ich die ansynchronous Option auf ‚true‘, nichts Feuer kippen. Was ich aus dem Internet sammeln kann, ist, dass die Benutzer etwas tun, wie folgt aus:
While xmlhttp.readyState <> 4
xmlhttp.waitForResponse 1000
Wend
Bin ich verrückt, dass dies wirklich nicht wie ein asynchrous Anruf scheinen mehr, obwohl, wenn Sie auf eine Antwort warten?
setzen Sie die Linie xmlhttp.waitForResponse 1
direkt nach dem Senden wird die Anfrage zu feuern, aber wieder möchte ich nicht eine Sekunde warten.
Irgendwelche Gedanken?
ausgezeichnet - danke! – EdenMachine
Sie haben mich gerade vor dem Tod gerettet, indem Sie Ihren Kopf gegen die Tastatur stampfen. Dies scheint ein direkter Ersatz (kein Refactoring notwendig?) Für "MSXML2.ServerXMLHTTP" zu sein - aber ich werde Regressionen ausführen, nur um sicherzugehen. – jerhewet