updateweb
This commit is contained in:
34
backend/src/helpers/response.ts
Normal file
34
backend/src/helpers/response.ts
Normal file
@@ -0,0 +1,34 @@
|
||||
/**
|
||||
* Response Helper Functions
|
||||
*
|
||||
* Purpose: Consistent API response formatting across all endpoints
|
||||
* Ensures all responses follow the same structure
|
||||
*/
|
||||
|
||||
import { Response } from 'express';
|
||||
import { ApiResponse } from '../@types';
|
||||
|
||||
export function sendSuccess<T>(res: Response, data: T, message?: string, statusCode = 200): void {
|
||||
const response: ApiResponse<T> = {
|
||||
success: true,
|
||||
data,
|
||||
...(message && { message }),
|
||||
};
|
||||
res.status(statusCode).json(response);
|
||||
}
|
||||
|
||||
export function sendError(res: Response, error: string, statusCode = 400): void {
|
||||
const response: ApiResponse = {
|
||||
success: false,
|
||||
error,
|
||||
};
|
||||
res.status(statusCode).json(response);
|
||||
}
|
||||
|
||||
export function sendCreated<T>(res: Response, data: T, message = 'Resource created successfully'): void {
|
||||
sendSuccess(res, data, message, 201);
|
||||
}
|
||||
|
||||
export function sendNoContent(res: Response): void {
|
||||
res.status(204).send();
|
||||
}
|
||||
Reference in New Issue
Block a user