mirror of
https://github.com/bubblecup-12/VogelSocialMedia.git
synced 2025-07-08 12:38:46 +00:00
added authentication and swagger
This commit is contained in:
parent
c311e3adda
commit
64c0d79438
8 changed files with 447 additions and 56 deletions
|
@ -14,17 +14,100 @@ import {
|
|||
loginUser,
|
||||
getUser,
|
||||
} from "../controllers/userController";
|
||||
/**
|
||||
* @swagger
|
||||
* components:
|
||||
* schemas:
|
||||
* UserRegistrationDto:
|
||||
* type: object
|
||||
* required:
|
||||
* - username
|
||||
* - email
|
||||
* - password
|
||||
* properties:
|
||||
* username:
|
||||
* type: string
|
||||
* email:
|
||||
* type: string
|
||||
* format: email
|
||||
* password:
|
||||
* type: string
|
||||
* format: password
|
||||
* UserLoginDto:
|
||||
* type: object
|
||||
* required:
|
||||
* - username
|
||||
* - password
|
||||
* properties:
|
||||
* username:
|
||||
* type: string
|
||||
* password:
|
||||
* type: string
|
||||
*/
|
||||
|
||||
/**
|
||||
* @swagger
|
||||
* /api/user/register:
|
||||
* post:
|
||||
* summary: Register a new user
|
||||
* tags: [User]
|
||||
* requestBody:
|
||||
* required: true
|
||||
* content:
|
||||
* application/json:
|
||||
* schema:
|
||||
* $ref: '#/components/schemas/UserRegistrationDto'
|
||||
* responses:
|
||||
* 201:
|
||||
* description: Benutzer erfolgreich registriert
|
||||
* 400:
|
||||
* description: Ungültige Eingabedaten
|
||||
*/
|
||||
userRouter.post(
|
||||
"/register",
|
||||
validateData(userRegistrationSchema),
|
||||
registerUser,
|
||||
registerUser
|
||||
);
|
||||
/**
|
||||
* @swagger
|
||||
* /api/user/login:
|
||||
* post:
|
||||
* summary: Log in a user
|
||||
* tags: [User]
|
||||
* requestBody:
|
||||
* required: true
|
||||
* content:
|
||||
* application/json:
|
||||
* schema:
|
||||
* $ref: '#/components/schemas/UserLoginDto'
|
||||
* responses:
|
||||
* 200:
|
||||
* description: Login erfolgreich
|
||||
* 401:
|
||||
* description: Ungültige Anmeldedaten
|
||||
*/
|
||||
userRouter.post("/login", validateData(userLoginSchema), loginUser);
|
||||
userRouter.get(
|
||||
"/getUser",
|
||||
authenticateToken(),
|
||||
validateData(userLoginSchema),
|
||||
getUser,
|
||||
);
|
||||
/**
|
||||
* @swagger
|
||||
* /api/user/getUser/{username}:
|
||||
* get:
|
||||
* summary: Get user data
|
||||
* tags: [User]
|
||||
* security:
|
||||
* - bearerAuth: []
|
||||
* parameters:
|
||||
* - in: query
|
||||
* name: username
|
||||
* required: true
|
||||
* schema:
|
||||
* type: string
|
||||
* description: Der Benutzername, nach dem gesucht werden soll
|
||||
* responses:
|
||||
* 200:
|
||||
* description: Login erfolgreich
|
||||
* 401:
|
||||
* description: Ungültige Anmeldedaten
|
||||
*/
|
||||
userRouter.get("/getUser/:username", authenticateToken(), getUser);
|
||||
|
||||
export default userRouter;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue