Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

[ASP] Asynchrone HTTP Request

Pagina: 1
Acties:

  • Nutcaze
  • Registratie: Oktober 1999
  • Laatst online: 06-11 19:57
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Request1 = False

Sub DoeWat1
    If objXmlHttp1.readyState = 4 Then Request1 = True
End Sub

Set objXmlHttp1 = Server.CreateObject("Msxml2.ServerXMLHTTP.5.0")
'objXmlHttp1.SetTimeOuts 1000, 2500, 2500, 40000
objXmlHttp1.onreadystatechange = DoeWat1
objXmlHttp1.open "GET", "http://10.100.100.65/timeout.asp", True
objXmlHttp1.send

Do Until Request1
    'Wacht tot de request klaar is
Loop

Response.Write(objXmlHttp1.responseText & "<p>")

Set objXmlHttp1 = Nothing


De regel met onreadystatechange wordt niet goedgekeurd, ik heb al van alles geprobeerd maar niets werkt. Is dit gewoon niet mogelijk in ASP? Ik vind namelijk alleen maar voorbeelden in JavaScript. Wat er eigenlijk moet gebeuren is dat er meerdere requests gedaan moeten worden naar verschillende servers maar als het even kan tegelijkertijd vandaar het asynchrone gebeuren.

Not all chemicals are bad. Without hydrogen or oxygen, for example, there would be no way to make water, a vital ingredient in beer.


Verwijderd

Euhm, zo'n HTTP request is JavaScript?

Heb totaal geen ervaring met ASP, maar wel met JS, so don't blaim me if i'm wrong :)

[ Voor 49% gewijzigd door Verwijderd op 01-08-2007 15:27 ]


  • Nutcaze
  • Registratie: Oktober 1999
  • Laatst online: 06-11 19:57
Verwijderd schreef op woensdag 01 augustus 2007 @ 15:26:
Euhm, zo'n HTTP request is JavaScript?

Heb totaal geen ervaring met ASP, maar wel met JS, so don't blaim me if i'm wrong :)
Werkt prima in ASP code maar krijg alleen die onreadystatechange niet werkend.

Not all chemicals are bad. Without hydrogen or oxygen, for example, there would be no way to make water, a vital ingredient in beer.


Verwijderd

In JS werkt het zo:

JavaScript:
1
2
3
4
5
6
7
xmlHttp.onreadystatechange=function()
{
  if(xmlHttp.readyState==4)
  {
    //doe iets met xmlHttp.responseText;
  }
}


Misschien dat je met ASP ook zoiets kan fixen?

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Nutcaze schreef op woensdag 01 augustus 2007 @ 15:24:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Request1 = False

Sub DoeWat1
    If objXmlHttp1.readyState = 4 Then Request1 = True
End Sub

Set objXmlHttp1 = Server.CreateObject("Msxml2.ServerXMLHTTP.5.0")
'objXmlHttp1.SetTimeOuts 1000, 2500, 2500, 40000
objXmlHttp1.onreadystatechange = DoeWat1
objXmlHttp1.open "GET", "http://10.100.100.65/timeout.asp", True
objXmlHttp1.send

Do Until Request1
    'Wacht tot de request klaar is
Loop

Response.Write(objXmlHttp1.responseText & "<p>")

Set objXmlHttp1 = Nothing
Waarom wil je 'm überhaupt a-synchroon doen om daarna in een busy-loop te gaan rondhangen tot 'ie klaar is :? Doe 'm dan gewoon synchroon...

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • Nutcaze
  • Registratie: Oktober 1999
  • Laatst online: 06-11 19:57
RobIII schreef op woensdag 01 augustus 2007 @ 15:31:
[...]


Waarom wil je 'm überhaupt a-synchroon doen om daarna in een busy-loop te gaan rondhangen tot 'ie klaar is :? Doe 'm dan gewoon synchroon...
Ik wil dus tegelijkertijd meerdere requests doen naar verschillende servers. Uiteindelijk moet ie blijven wachten tot alle requests afgehandeld zijn.

Om e.e.a. te verduidelijken: ik moet 8 requests doen die gem. 10 seconden duren. Vandaar liefst tegelijkertijd.

[ Voor 12% gewijzigd door Nutcaze op 01-08-2007 15:36 ]

Not all chemicals are bad. Without hydrogen or oxygen, for example, there would be no way to make water, a vital ingredient in beer.


  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Dan zul je naar ASP.Net moeten gaan kijken, in classic ASP is dit bij mijn weten niet mogelijk. Wat je wel snel en makkelijk in elkaar kunt flansen is een COM dll die dit voor je afhandelt en de method pas laten returnen als alles klaar is. Dan maak je in feite een soort 'wrapper'.

[ Voor 71% gewijzigd door RobIII op 01-08-2007 15:39 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • Nutcaze
  • Registratie: Oktober 1999
  • Laatst online: 06-11 19:57
RobIII schreef op woensdag 01 augustus 2007 @ 15:36:
Dan zul je naar ASP.Net moeten gaan kijken, in classic ASP is dit bij mijn weten niet mogelijk. Wat je wel snel en makkelijk in elkaar kunt flansen is een COM dll die dit voor je afhandelt en de method pas laten returnen als alles klaar is. Dan maak je in feite een soort 'wrapper'.
Ga ik dan maar proberen. In ieder geval bedankt.

Not all chemicals are bad. Without hydrogen or oxygen, for example, there would be no way to make water, a vital ingredient in beer.


  • Nutcaze
  • Registratie: Oktober 1999
  • Laatst online: 06-11 19:57
COM dll is kennelijk ook niet mogelijk. Omdat ASP single threaded is werkt dit blijkbaar gewoon niet. ASP.NET biedt wel de oplossing ja. Ietwat omslachtige manier in het huidige systeem maar het werkt. Bedankt.

Not all chemicals are bad. Without hydrogen or oxygen, for example, there would be no way to make water, a vital ingredient in beer.

Pagina: 1