大家好,我遇到了這個錯誤(MEAN STACK)
- 加載資源失敗:服務器回應狀態為 500(內部服務器錯誤)
- find() 的引數“過濾器”必須是一個物件,得到 1984”
這是后端代碼:
booksRoute.route('/:name').get((req,res,next)=>{
BookModel.find(req.params.name,(error,data)=>{
if (error){
return next(error) ;
} else {
res.json(data)
}
})
})
只是一個簡單的 API 來通過它的名字來獲取一本書,這就是前端代碼(帶有一個書名輸入的表單)
<form method="GET" class="d-flex" #f="ngForm" (ngSubmit)="searchBook(f.value)">
<input name="searchedBook" class="form-control me-2" type="text" placeholder="search book by name" aria-label="Search" ngModel>
<button class="btn btn-outline-success" type="submit">Search</button>
</form>
這是我用來獲取資料的服務
getBook(name){
return this.http.get(this.backendUrl '/' name) ;
}
這是貓鼬資料模型
let books = new Schema({
name:{
type:String
},
genre:{
type:String
},
author:{
type:String
},
rating:{
type:Number
},
price:{
type:Number
}
},{
collection: 'booklist'
})
uj5u.com熱心網友回復:
您應該將帶有屬性的物件傳遞name給.find(),并且您已經通過了req.params.name. 像這樣改變你的代碼:
BookModel.find({ name: req.params.name },(error,data)=>{
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/353498.html
上一篇:如何條件化課堂
