我对用于测试任何API输出的URI感到困惑。例如,我有一段代码,使用POST方法将用户写入数据库。
Usercontroller.js
router.post('/', function (req, res) {
User.create({
name : req.body.name,
email : req.body.email,
password : req.body.password
},
现在我将此路由器导出到另一个文件。
var Usercontroller = require('./user/UserController.js');
var users = app.use('/users',UserController);
现在,当我开始使用此URI监听端口8082时: http://localhost:8082/users我得到了预期的结果。
我想在发送到router.post的请求字符串中进行更改。 我试图更改 var users = app.use('/ users',UserController); 但这不起作用。任何人都可以解释URI如何在express或node中工作。我试图理解这个概念!
答案 0 :(得分:0)
Express在它们之间添加路线。
您的UserController以'/'为目标,然后添加'/ users'。
您的API是:POST http://localhost:8082/users/
如果要在'/ users'之后添加API,则必须在UserController中声明路由器。
如果您想将GET添加到此网址“http://localhost:8082/users/foo”。您可以将此代码添加到UserController:
router.get('/foo', function (req, res) {
// code
}
Express会将路由器加在一起。
您的API将是这样的:
您可以使用类似的可配置参数:
router.delete('/:uuid', function (req, res) {
// :uuid is in req.params.uuid
}