Rumah > Soal Jawab > teks badan
Menggunakan kod di bawah, saya boleh memasukkan maklumat dalam jadual MySQL saya dalam kaedah pos dan maklumat dilog dalam jadual. Saya juga menyemaknya di terminal js. Menggunakan arahan "node api.js", maklumat terakhir nampaknya didaftarkan. Tetapi apabila saya menyemak dengan Posmen, maklumat tambahan terakhir tidak ditunjukkan.
const mysql = require('mysql'); const express = require('express'); const app = express(); const port = 3000; let cevap; const baglanti = mysql.createConnection({ host: 'example', user: 'example', password: 'example', database: 'example' }); baglanti.connect(); baglanti.query('SELECT * FROM users', function (error, results, fields) { if (error) throw error; cevap = results; console.log(results); baglanti.end(); }); app.post('/users', (req, res) => { res.send(cevap); }); app.listen(port, () => { console.log("worked"); });
Jika anda melihat foto pertama, saya dapat melihat maklumat yang ditambahkan dalam terminal, tetapi maklumat yang terakhir dimasukkan tidak kelihatan dalam foto kedua (iaitu pada skrin posmen).
Apa yang saya mahukan ialah dapat melihat semua pengguna tambahan dalam Posmen. Apabila saya menambah pengguna baharu, saya segera melihatnya daripada posmen (sudah didaftarkan ke jadual MySQL)
P粉2384338622024-04-04 18:49:32
Setiap kali anda memerlukan data baharu, anda perlu menanyakan pangkalan data untuk data baharu.
Ofc. Anda boleh cache ia atau sesuatu, tetapi itu mungkin terlalu maju untuk kes ini.
const mysql = require('mysql'); const express = require('express'); const app = express(); const port = 3000; const sql = mysql.createConnection({ host: 'example', user: 'example', password: 'example', database: 'example', }); sql.connect(); app.post('/users', (req, res, _next) => { sql.query('SELECT * FROM users', function (error, results, fields) { if (error) throw error; console.log(results); res.send(results); }); }); app.listen(port, () => { console.log(`Server running at http://localhost:${port}`) });