5

Mam dziwny problem, mam bardzo prostą aplikację node/expressjs (mam dużo bardziej złożoną, ale ten prosty przykład pokazuje problem). Ta aplikacja ma trzy trasy, jak pokazano poniżej:Podwójne żądanie, gdy narzędzia deweloperów chrome otwierają się

var i = 0; 

app.route('/login') 
.get(function(req, res){ 
    console.log('login', ++i); 

    res.send('login'); 
}) 

app.route('/test') 
.get(function(req, res){ 
    console.log('test', ++i); 

    res.send('test'); 
}) 

app.route('/') 
.get(function(req, res){ 
    console.log('index', ++i); 

    res.send('index'); 
}) 

Całkiem proste. Za każdym razem, gdy jedna z tych tras jest żądana, "i" jest inkrementowana i rejestrowana, i działa dobrze, z wyjątkiem sytuacji, gdy narzędzia do tworzenia chrome są otwarte. Gdy narzędzia deweloperskie są otwarte, prośba o zalogowanie lub test zostanie zażądany dwukrotnie. Oto wyniki dziennika:

15:45:30 web.1 | index 1 
15:45:33 web.1 | login 2 
15:45:34 web.1 | login 3 
15:45:37 web.1 | test 4 
15:45:37 web.1 | test 5 
15:45:41 web.1 | login 6 
15:45:42 web.1 | login 7 
15:45:45 web.1 | test 8 
15:45:45 web.1 | test 9 
15:45:48 web.1 | index 10 

Co tu się dzieje. Czy to błąd przeglądarki Chrome?

Adam

Odpowiedz

5

To jest znany problem z chromem.

Google ma tutaj dyskusję, która omawia możliwe prace wokół ... Nie znalazłem prawdziwego rozwiązania, ale powinno to dać ci dobry początek.

https://code.google.com/p/chromium/issues/detail?id=64810

+0

Wygląda tyłem do Firefox dla dev ... – adamdaly

+0

Właśnie wpadł na to. Uderzyłem moją głowę o kod przez 20 minut, próbując dowiedzieć się, dlaczego rejestrowane są podwójne żądania, a następnie zamknąłem narzędzia programistyczne ... i nie było już podwójnych żądań. Czy to jest regresja? Wydaje się dziwne, że nigdy nie zauważyłem tego zachowania. – numbers1311407

+0

frustrujące, wisiało tu godzinami ... dzięki za informację! – GobiRan

Powiązane problemy