Node.js 带前端的Node js api如何添加书籍
我用一个数据库制作了一个api来存储书籍,我可以像这样在前端获取书籍Node.js 带前端的Node js api如何添加书籍,node.js,api,frontend,Node.js,Api,Frontend,我用一个数据库制作了一个api来存储书籍,我可以像这样在前端获取书籍 async function getBooks() { try { const response = await fetch("https://node-api-with-books.herokuapp.com/books"); return await response.json(); // console.log(books) } catch (error) {
async function getBooks() {
try {
const response = await fetch("https://node-api-with-books.herokuapp.com/books");
return await response.json();
// console.log(books)
} catch (error) {
console.log("Error", error);
}
}
getBooks().then(book => {
console.log(book);
});
但是我想考虑如何将一本书添加到api中,如果我正确地理解了这一点,并且假设您将api配置为接受Post请求,那么您所要做的就是向后端api发送Post请求
异步函数addBook(bookData){
试一试{
const response=等待获取(“https://node-api-with-books.herokuapp.com/books", {
方法:“POST”,
标题:{
“内容类型”:“应用程序/json”,
},
正文:JSON.stringify(bookData),
});
返回response.json();
}捕获(错误){
console.log(“错误”,Error);
}
}
在后端,您将使用中间件解析请求,然后可以从req.body获取数据
谢谢,它很有效,但当我添加了一个长作者而没有标题时,它给了我一个应用程序错误。你知道为什么吗?你会遇到什么样的错误?可能有一些原因,例如
作者
和标题
都是数据库中的必填字段,可能作者对作者字符数有一些限制。在本地主机上尝试或检查Heroku logsIt上的错误,这只是给了我Heroku应用程序错误,我认为这不是必需的,因为我输入的作者和标题都是空的,如果没有太多信息,很难判断,Heroku应用程序错误通常是5xx服务器错误,如果您没有以正确的方式处理错误,那么最好使用Heroku logs--tail检查日志中的错误,或者如果您的应用程序在本地,那么您可以尝试模仿行为,然后在终端上检查错误