Oto sedno:Jak wywołać asynchroniczne wywołanie w asp classic i zignorować odpowiedź?
Mam połączenie, które chcę wykonać w bolenie, i nie dbam o odpowiedź. Chcę tylko wystrzelić połączenie i nie chcę, aby strona czekała na odpowiedź. Zgodnie z dokumentacją, powinno to wyglądać mniej więcej tak:
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
Działa to aksamitny Dzwoniąc synchronicznie, ale kiedy przerzucić ansynchronous opcję „true”, pożary nic. Co mogę zebrać z Internetu jest to, że użytkownicy zrobić coś jak następuje:
While xmlhttp.readyState <> 4
xmlhttp.waitForResponse 1000
Wend
jestem szalona, że to naprawdę nie wydawać się asynchrous rozmowy już jednak, jeśli czekasz na odpowiedź?
umieszczenie linii xmlhttp.waitForResponse 1
tuż po wysłaniu spowoduje wysłanie żądania, ale znowu, nie chcę czekać na sekundę.
Jakieś myśli?
doskonały - dziękuję! – EdenMachine
Właśnie uratowałeś mnie przed śmiercią, uderzając głową w klawiaturę. To wydaje się być bezpośrednim zamiennikiem (bez konieczności refaktoryzacji?) Dla "MSXML2.ServerXMLHTTP" - ale będę uruchamiał regresje tylko po to, aby się upewnić. – jerhewet