【发布时间】:2022-01-06 07:04:49
【问题描述】:
我正在通过 JS 为 CRUD 应用程序创建 HTTP 请求。此请求的目的是在新用户帐户的登录数据库中简单地创建一条记录。当我尝试请求这个时,我收到一个 500 错误:
我在一个愚蠢的小测试脚本中提出请求:
const axios = require("axios");
var http = axios.create({
baseURL: "http://localhost:8080/",
headers: {
"Content-type": "application/json"
}
});
class UserDataService {
getAll(){
return http.get("/users");
}
get(id){
return http.get(`/users/${id}`);
}
create(data){
return http.post("/users", data);
}
update(id, data){
return http.put(`/users/${id}`, data);
}
delete(id){
return http.delete(`/users/${id}`);
}
findByUsername(username){
return http.get(`/users?username=${username}`);
}
authenticateLogin(data){
console.log(data);
return http.get("/login");
}
}
function main(){
const uds = new UserDataService();
// http://localhost:8080'/api/users
uds.create({
username: "root",
email: "root@enron.com",
password: "password"
}).catch(err => {
console.log(err);
});
}
main();
这被路由到users.routes.js:
router.post("/users", users.create);
然后发送到users.controller.js:
exports.create = (req, res) => {
console.log("User being created");
const user = {
username: req.body.username,
email: req.body.email,
password: crypto.createHash("md5").update(req.body.password).digest("hex")
};
Users.create(user)
.then(data => {
res.send(data)
})
.catch(err => {
res.status(500).send({
message: err.message || "Error occurred when creating a user"
})
});
};
这是我的错误:
Error: Request failed with status code 500
at createError (/home/amicharski/WebstormProjects/profrec/node_modules/axios/lib/core/createError.js:16:15)
at settle (/home/amicharski/WebstormProjects/profrec/node_modules/axios/lib/core/settle.js:17:12)
at IncomingMessage.handleStreamEnd (/home/amicharski/WebstormProjects/profrec/node_modules/axios/lib/adapters/http.js:293:11)
at IncomingMessage.emit (node:events:402:35)
at endReadableNT (node:internal/streams/readable:1343:12)
at processTicksAndRejections (node:internal/process/task_queues:83:21) {
【问题讨论】:
-
好像是服务器错误,你在后端看到什么了吗?
-
我看到的只是我发布的错误
-
尝试使用邮递员查看后端是否正常工作。
标签: javascript express