Почему Chrome ожидает каждый второй запрос при использовании webpack-dev-server? - PullRequest
3 голосов
/ 06 мая 2019

Может кто-нибудь помочь мне понять, что происходит за сотни миллисекунд до первоначального подключения?

Это происходит при каждом другом запросе только так, как показано.

Запросы представляют собой POST-запросы к одному и тому же ресурсу на localhost - против веб-приложения ASP.NET Core.

IЯ также рассмотрел другие подобные вопросы и ответы, но я не видел примеров, в которых ничего не было до первоначального подключения.У всех остальных, кажется, есть планка "Stalled" или "Queuing".

Waterfall for all requests

Waterfall for single request

«Короткие» запросы выглядят так:

enter image description here

Версия Chrome: 74.0.3729.131 (версия для Officiel) (64-разрядная версия)

ОБНОВЛЕНИЕ 1 : Этого не происходитв Microsoft Edge.Каждый запрос там короткий.Нет ожидания.

ОБНОВЛЕНИЕ 2 : при загрузке файла HAR для длинного запроса обнаруживается очень длительное время «соединения»:

 "timings": {
  "blocked": 1.135999995024409,
  "dns": 0.0030000000000000027,
  "ssl": -1,
  "connect": 301.202,
  "send": 0.18900000000002137,
  "wait": 79.29900000206612,
  "receive": 3.750999996555038,
  "_blocked_queueing": 0.8449999950244091
},

У короткого соединения есть соединениевремя -1:

  "timings": {
      "blocked": 0.9680000060191378,
      "dns": -1,
      "ssl": -1,
      "connect": -1,
      "send": 0.091,
      "wait": 50.74499999642931,
      "receive": 2.582000000984408,
      "_blocked_queueing": 0.8130000060191378
    },

Но почему?

ОБНОВЛЕНИЕ 3 : Оказывается, это происходит только при прокси через webpack-dev-server.Я тоже добавлю этот тег.Тем не менее, это происходит только в Chrome.

ОБНОВЛЕНИЕ 4 : краткое изложение того, что сейчас имеет место, шаблон возникает при использовании:

  • Proxyчерез webpack-dev-server от localhost: 3000 -> localhost: 3001, не при прямом переходе к конечной точке на localhost: 3001
  • locahost: 3000 в качестве адреса в Chrome, а не при использовании 127.0.0.1:3000.
  • Chrome (несколько версий, включая 74.0.3729.131), не Microsoft Edge
  • Windows 10, не Ubuntu 19.04

Оба в NodeJS 10 и NodeJS 12. Протестированона нескольких машинах, а также с Chrome в режиме инкогнито.

...