После записи данных возникает ошибка «Write after end» - PullRequest
0 голосов
/ 29 июня 2019

Я использую экспресс для обработки соединения с моей базой данных postgres.Я использую React JS для моего интерфейса.Данные хорошо записываются в базу данных, но после каждой вставки мне приходится перезагружать сервер, потому что появляется ошибка «Write after end».Вот часть моего файла server.js, который, по моему мнению, вызывает проблему:

    pool.connect((err, db, done) => {
     if(err) {
         return response.status(400).send(err);
     } else {
         db.query('INSERT INTO news (headline, date, content, images, id, snippet, author) VALUES($1, $2, $3, $4, $5, $6, $7)',[...values], (err, table) => {
             done();
             if (err) {
                 return response.status(400).send(err);
             } else {
                 console.log('DATA INSERTED');
                 db.end();
             }
         })
     }
 })

Пожалуйста, дайте мне знать ваши мысли о том, как решить эту проблему.

1 Ответ

0 голосов
/ 01 июля 2019

Итак, проблемы, похоже, возникли из части "db.end ()".Как только я удалил это и добавил respsonse.status (201), ошибка исчезла.Вот мой обновленный код:

    pool.connect((err, db, done) => {
     if(err) {
         return response.status(400).send(err);
     } else {
         db.query('INSERT INTO news (headline, date, content, images, id, snippet, author) VALUES($1, $2, $3, $4, $5, $6, $7)',[...values], (err, table) => {
             done();
             if (err) {
                 return response.status(400).send(err);
             } else {
                 return response.status(201).send(`Data Inserted`);
             }
         })
     }
 })
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...