2016-11-01 2 views
1

Meine Bitte schaut diese -

$http.post('/api/internal/Properties/' + options.property.id + '/Upload', { Buildings: Buildings }) 
         .success(function (data){ 

auf der Serverseite, diese Anforderung eine lange Zeit zu verarbeiten, nehmen. Bis zu 5 Minuten. Bevor sie beendet werden kann (res.send()), wird die $ http.post-Anfrage alle paar Minuten erneut aufgerufen.

Wenn es schließlich die Verarbeitung beendet, wird die res.send (Daten) nie auf der Clientseite gefangen. Es ist wie es einfach verschwindet.

Alles würde helfen. Danke,

Antwort

1

Jeder Browser hat seine eigene HTTP-Anfrage Timeout. So wird es nicht 5 Minuten warten, um die Anforderung abzuschließen, es würde nur fehlschlagen. Browser Timeouts.

In Chrom ist es 30 oder 60 Sekunden.

In Ihrem Fall empfehle ich, Sockets oder etwas ähnliches zu verwenden, um dem Benutzer zu zeigen, was beim Hochladen los ist.

Hoffe, das hilft.

+0

Ich hatte gehofft, dass es einen anderen Weg gab. Aber ich muss nur eine Antwort senden, sobald ich die Datei erhalte. Dann nach der Verarbeitung nur Ereignisse emittieren und was nicht. Vielen Dank. – caden311

Verwandte Themen