所以問題發生在我的 API 的架構中,我想將它放入名為 items[] 的陣列中。

如我們所見,這是一個在 express mongodb 上撰寫的簡單 API。但問題是如何將我的資料從 post 方法放入名為 items[] 的全域陣列中。它應該看起來像:

所以代碼是:
const express = require('express')
const MongoClient = require('mongodb').MongoClient
const ObjectId = require('mongodb').ObjectId
const app = express();
let db;
const port = process.env.PORT || 3015
app.use(express.json());
app.use(express.urlencoded({ extended: true }));
app.get('/', (req, res) => {
res.send('Hey')
})
app.get('/artists', (req, res) => {
let count = 10
let page = 0
req.query.count ? count = req.query.count : null
req.query.page ? (page = req.query.page * count, count = page 5) : null;
db.collection('artists').find().toArray((err, docs) => {
if (err) {
console.log(err)
return res.sendStatus(500)
}
res.send(docs.slice(page, count))
})
}),
app.post('/artists', (req, res) => {
const artist = {
name: req.body.name,
photos: {
small: null,
large: null
},
status: null,
followed: false
}
db.collection('artists').insertOne(artist, (err, result) => {
if (err) {
console.log(err)
return res.sendStatus(500)
}
res.send(artist)
})
})
MongoClient.connect('***********', (err, client) => {
if (err) {
return console.log(err)
}
db = client.db('mongod');
app.listen(port, () => {
console.log(`API is listening on port ${port}...`)
})
})
uj5u.com熱心網友回復:
您可以輕松完成此操作res.json(),將回應作為 json 資料發送。
改變
res.send(docs.slice(page, count))
到
res.json({ items: docs.slice(page, count), status: "success" })
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/334961.html
標籤:javascript MongoDB 表达
上一篇:'{identifier:string;型別的引數}'不可分配給型別為'ConcatArray<never>'的引數
