[英]Router doesn't return json what wrong?
This code don't give a response, where is trouble?这段代码不给反应,麻烦在哪里? index.js:
索引.js:
const express = require('express')
const mongoose = require('mongoose')
const authRouter = require('./authRouter') //import of router.
const PORT = process.env.PORT || 3000
const app = express()
app.use(express.json()) //to get server to parse
app.use('/auth', authRouter)
const start = async () =>{
try{
await mongoose.connect('mongodb+srv://*****:*****@cluster0.lwems.mongodb.net/myFirstDatabase?retryWrites=true&w=majority')
app.listen(PORT, ()=> console.log('Server started on 3000'))
} catch(e){
console.log(e)
}
}
start()
authRouter.js authRouter.js
const Router = require('express')
const controller = require('./authController')
const router = new Router() //create an object
router.post('/registration', controller.registration)
router.post('/login', controller.login)
router.post('/users', controller.getUsers) //for different access
module.exports = router
authController.js authController.js
class authController{
async registration(req,res) {
try {
} catch (e) {
console.log(e)
}
}
async login(req, res) {
try {
} catch (e) {
console.log(e)
}
}
async getUsers(req, res) {
try {
res.json("HEY")
} catch (e) {
console.log(e)
}
}
}
module.exports = new authController()
when i do request from browser it returns: Cannot GET /auth/users当我从浏览器发出请求时,它返回:无法获取/auth/users
I don't understand where is my mistake.我不明白我的错误在哪里。 all done in accordance with example.
全部按照示例完成。
Cannot GET /auth/users
Try changing request method from post
to get
in AuthRouter.js尝试将请求方法从
post
更改为get
AuthRouter.js
router.post('/registration', controller.registration)
router.post('/login', controller.login)
router.get('/users', controller.getUsers)
The problem is you are not returning the res.json()
问题是你没有返回
res.json()
Please do -请做-
async getUsers(req, res) {
try {
return res.json("HEY");
} catch (e) {
console.log(e)
return res.json({"result":"failed", "error": e});
}
}
and it would work;)它会起作用;)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.