Spaces:
Building
Building
File size: 626 Bytes
656c481 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
import { Request, Response, NextFunction } from "express";
const authentication = (req: Request, res: Response, next: NextFunction) => {
const authHeader = req.headers["authorization"];
if (!authHeader) {
return res.status(401).json({ message: "Missing authorization header" });
}
const apiKey = authHeader.split("Bearer ").at(-1);
if (!apiKey) {
return res.status(401).json({ message: "Invalid authorization format" });
}
if (process.env.API_KEY && apiKey === process.env.API_KEY) {
next();
} else {
res.status(401).json({ message: "Unauthorized" });
}
};
export default authentication;
|