[英]Express.js two routes like signup and signin in single module
在將不同功能(例如注冊,登錄,刪除配置文件,編輯配置文件)放在一個名為Users in express的文件中時,我需要幫助。
我已經在'/'
上進行了注冊,但是現在無法在users文件中找到進入登錄功能的方法。
對於注冊,我將express方法用作app.use('/signup' , Users)
,我想知道如何立即訪問登錄功能
//this is the code in Users.js file
router.post("/", (req, res) => {
var user = new User();
user.name = req.body.name;
user.DOB = req.body.DOB;
user.email = req.body.email;
user.city = req.body.city;
user.password = req.body.password;
user.gender = req.body.gender;
user.image = req.body.image;
user.Phone = req.body.PhoneNumber;
user.MsgNumber = req.body.MsgNumber;
user.about = req.body.about;
user.JoinDate = new Date;
user.save(function(err, result) {
if (err) {
res.json({
status: err
})
} else {
res.json({
status: 'ok'
});
}
});
});
//now the second function of signin
router.post("/signIn", passport.authenticate("local"), (req, res) => {
if (usernotfound == 0) {
res.send(JSON.stringify(req.user));
} else {
res.send('Not Found')
}
// here is the code from the main server js file to send data to these functions
app.use('/signUp', users)
app.use('/signin', users)
{signup在'/'上,因此直接稱為根函數。 現在如何訪問登錄功能}
不太確定您要查找什么,但是在執行此操作時,您對不同的路由使用了相同的處理程序:
app.use('/signUp', users)
app.use('/signin', users)
您在此處表示的意思是“我希望用戶登錄並登錄時會發生同樣的事情”
您可以讓用戶在同一文件中路由,但處理程序需要不同。
index.js
const epxress = require('express')
const userRouter = require('./users')
const app = express()
app.use('/users, userRouter)
索引文件是一個簡單的快速應用程序,需要user.js
users.js
const expreess = require('express')
const router = express.Router()
router.post("/signIn", passport.authenticate("local"), (req, res) => {
// Your code for signing in
})
router.post('/signUp', (req, res) => {
// your code for signing up
})
module.exports = router
所以users.js是一個簡單的快速路由器。 因此,現在訪問者可以轉到/ users / signIn和/ users / signUp-基本上,他們轉到'/ users'並被路由到user.js文件,該文件具有定義了/ signIn和/ signUp的其他路由,因此完整的路徑變為/ users / signIn和/ users / signUp
另一種方法是在users.js文件中導出兩個處理程序。 就像是
index.js
app.post('/signIn', users.signIn)
app.post('/signUp', users.signUp)
然后在你的users.js中
exports.signIn = function(req, res) {
// Your code for signin in
}
exports.signUp = function(req, res) {
// Your code for signing up
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.