evgeniy8705
@evgeniy8705
Повелитель вселенной

Почему происходит ошибка Cannot read property 'Symbol(asyncId)' of null?

Версия node.js - 8.2.1. Думаю не лучший выбор был.
Почему возникает ошибка Cannot read property 'Symbol(asyncId)' of null?
Stack trace
_http_outgoing.js:636
    nextTick(msg.socket[async_id_symbol],
                       ^

TypeError: Cannot read property 'Symbol(asyncId)' of null
    at write_ (_http_outgoing.js:636:24)
    at ServerResponse.write (_http_outgoing.js:630:10)
    at Timeout.setTimeout [as _onTimeout] (C:\Users\iamevg_\Desktop\app\app.js:8:9)
    at ontimeout (timers.js:488:11)
    at tryOnTimeout (timers.js:323:5)
    at Timer.listOnTimeout (timers.js:283:5)



Код:
let server = require("http").createServer().listen(8080);

server.on("request", (req, res) => {
  res.writeHead(200);
  res.write("Start");

  setTimeout(() => {
    res.write("Finish");
  }, 3000);

  req.on("data", msg => {
    console.log(msg.toString());
  });

  req.on("end", () => {
    res.end();
  });
});


Отправляю запрос через curl curl -d "Hello" http://localhost:8080. Данные приходят, только вот по истечению setTimeout происходит ошибка. Только начал изучать node.js, поэтому даже примерно догадаться не могу в чем проблема. У преподавателя данный код отрабатывает нормально, вероятно потому что использует более раннюю версию.

PS. Первый раз буффер данных пришел нормально. Сначала вывелось "Start", спустя 3 секунды "Finish". После этого скрипт закончил работу. Сейчас же выходит вышеописанный случай.

PSS. Попробовал опять отправить точно такой же запрос. Ничего не менял. Теперь выскакивает ошибка что происходит запись после окончания.
Stack Trace
events.js:182
throw er; // Unhandled 'error' event
^

Error: write after end
at write_ (_http_outgoing.js:635:15)
at ServerResponse.write (_http_outgoing.js:630:10)
at Timeout.setTimeout [as _onTimeout] (C:\Users\iamevg_\Desktop\app\app.js:8:9)
at ontimeout (timers.js:469:11)
at tryOnTimeout (timers.js:304:5)
at Timer.listOnTimeout (timers.js:264:5)
  • Вопрос задан
  • 1573 просмотра
Пригласить эксперта
Ответы на вопрос 1
larisamoroz
@larisamoroz
Курю маны, втыкаю в код, ваяю, починяю.
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы