mirror of
https://github.com/linux-odyssey/linux-odyssey.git
synced 2026-11-08 11:30:12 +08:00
Create fake auth middleware
Work in progress
This commit is contained in:
1 parent
04edfdd0dc
commit
da4b1b18a4
5 files changed
+25
-3
No files matched your search
@@ -12,9 +12,11 @@ export async function getSessionList(req, res) {
|
|||||||
export async function createSession(req, res) {
|
export async function createSession(req, res) {
|
||||||
const newSession = new Session({
|
const newSession = new Session({
|
||||||
user: req.user.id,
|
user: req.user.id,
|
||||||
exercise: req.body.exercise_id,
|
exercise: req.body.quest_id,
|
||||||
})
|
})
|
||||||
|
|
||||||
|
console.log(newSession)
|
||||||
|
|
||||||
try {
|
try {
|
||||||
const session = await newSession.save()
|
const session = await newSession.save()
|
||||||
res.status(201).json(session)
|
res.status(201).json(session)
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
import { Router } from 'express'
|
import { Router } from 'express'
|
||||||
import sessions from './sessions.js'
|
import sessions from './sessions.js'
|
||||||
|
import { authMiddleware } from '../../middleware/auth.js'
|
||||||
|
|
||||||
const router = Router()
|
const router = Router()
|
||||||
|
|
||||||
@@ -7,6 +8,6 @@ router.get('/', (req, res) => {
|
|||||||
res.send('Hello API!')
|
res.send('Hello API!')
|
||||||
})
|
})
|
||||||
|
|
||||||
router.use('/sessions', sessions)
|
router.use('/sessions', authMiddleware, sessions)
|
||||||
|
|
||||||
export default router
|
export default router
|
||||||
@@ -0,0 +1,19 @@
|
|||||||
|
/* eslint-disable import/prefer-default-export */
|
||||||
|
import User from '../models/user.js'
|
||||||
|
|
||||||
|
export async function authMiddleware(req, res, next) {
|
||||||
|
try {
|
||||||
|
let user = await User.findOne({ username: 'defaultUser' })
|
||||||
|
if (!user) {
|
||||||
|
user = new User({
|
||||||
|
username: 'defaultUser',
|
||||||
|
email: 'john@example.com',
|
||||||
|
})
|
||||||
|
await user.save()
|
||||||
|
}
|
||||||
|
req.user = user
|
||||||
|
next()
|
||||||
|
} catch (err) {
|
||||||
|
res.status(500).json({ message: err.message })
|
||||||
|
}
|
||||||
|
}
|
||||||
Whitespace-only changes.
+1
-1
@@ -39,7 +39,7 @@ paths:
|
|||||||
summary: create a new session for current user
|
summary: create a new session for current user
|
||||||
parameters:
|
parameters:
|
||||||
- name: quest_id
|
- name: quest_id
|
||||||
in: query
|
in: body
|
||||||
description: pass the quest id
|
description: pass the quest id
|
||||||
required: true
|
required: true
|
||||||
style: form
|
style: form
|
||||||
|
|||||||
Reference in new issue
Block a user