Как отправить данные JSON вместо записи в консоль - PullRequest
3 голосов
/ 14 марта 2020

Я работаю над приложением заказа еды во флаттере и API в Express. js с MySql для базы данных. Мне удалось подключиться к базе данных и получить данные JSON и console.log (), но я не знаю, как отправить их в приложение. Любая помощь будет принята с благодарностью.

Вот код.

const express = require('express');
const router = express.Router();
const mysql = require('mysql');

var pool = mysql.createPool({
    host: 'localhost',
    user: 'root',
    password: '',
    database: 'ala_ainy_db',
    connectionLimit: 10,
});

router.get('/', (req, res, next) => {

    pool.getConnection(function (err, conn) {
        if (err) return;
        conn.query('SELECT * FROM restaurants', function (err, rows) {
            if (err) {
                conn.release();
                console.log('failed');
            }
            rows.forEach((row) => {
                console.log(`ID: ${row.id}, Name: ${row.name}`);
            });
            conn.release();
        })
    });
});

1 Ответ

6 голосов
/ 14 марта 2020

Вы можете отправить свои данные в ответ с помощью методов express res.json() или res.send().

res. json () Отправка JSON ответ. Этот метод отправляет ответ (с правильным типом содержимого), который является параметром, преобразованным в строку JSON с использованием JSON .stringify () .

res. send () Отправляет ответ HTTP. Параметр body может быть объектом Buffer, строкой, объектом или массивом.

Пример:

const express = require('express');
const router = express.Router();
const mysql = require('mysql');

var pool = mysql.createPool({
    host: 'localhost',
    user: 'root',
    password: '',
    database: 'ala_ainy_db',
    connectionLimit: 10,
});

router.get('/', (req, res, next) => {

    pool.getConnection(function (err, conn) {
        if (err) return;
        conn.query('SELECT * FROM restaurants', function (err, rows) {
            if (err) {
                conn.release();
                console.log('failed');
            }
            conn.release();
            res.status(200).json(rows);

        })
    });
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...