Spaces:
Running
Running
| import jwt from 'jsonwebtoken'; | |
| export async function login(req, res) { | |
| try { | |
| const { username, password } = req.body; | |
| const envUsername = process.env.ADMIN_USERNAME || 'admin'; | |
| const envPassword = process.env.ADMIN_PASSWORD || 'admin123'; | |
| if (username === envUsername && password === envPassword) { | |
| const token = jwt.sign( | |
| { username }, | |
| process.env.JWT_SECRET || 'fallback_secret_key', | |
| { expiresIn: '24h' } | |
| ); | |
| return res.status(200).json({ | |
| success: true, | |
| message: 'Login successful', | |
| token, | |
| user: { username } | |
| }); | |
| } | |
| return res.status(401).json({ | |
| success: false, | |
| message: 'Invalid username or password' | |
| }); | |
| } catch (error) { | |
| console.error('Login error:', error); | |
| return res.status(500).json({ | |
| success: false, | |
| message: 'An error occurred during login' | |
| }); | |
| } | |
| } | |