我正在使用 Express 和 Postgres 实现 REST APIS。在端点中,我想首先通过 FK user_id 从表中删除所有实例,然后插入具有相同 user_id 的多个新实例。我想知道在这种情况下我应该使用哪种 http 方法?目前我使用 POST 但我不知道这是否合适。看来使用 PUT 也可以正常工作。
router.post('/myTable', auth, async (req, res) => {
const client = await pool.connect();
try {
await client.query('BEGIN');
const { records } = req.body;
await client.query('DELETE FROM my_table WHERE user_id=$1', [req.user_id]);
for (i in records) {
await client.query('INSERT INTO my_table (name, user_id) VALUES ($1, $2)',[records[i], req.user_id]);
}
await client.query('COMMIT');
res.send();
} catch (error) {
console.log(error);
await client.query('ROLLBACK');
} finally {
client.release();
}
});
开满天机
尚方宝剑之说
料青山看我应如是
相关分类