mirror of
https://github.com/hedgedoc/hedgedoc.git
synced 2025-05-23 19:47:03 -04:00
Adapt react-client to use the real backend API (#1545)
Co-authored-by: Philip Molares <philip.molares@udo.edu> Co-authored-by: Tilman Vatteroth <git@tilmanvatteroth.de>
This commit is contained in:
parent
3399ed2023
commit
26f90505ff
227 changed files with 4726 additions and 2310 deletions
41
src/handler-utils/respond-to-matching-request.ts
Normal file
41
src/handler-utils/respond-to-matching-request.ts
Normal file
|
@ -0,0 +1,41 @@
|
|||
/*
|
||||
* SPDX-FileCopyrightText: 2022 The HedgeDoc developers (see AUTHORS file)
|
||||
*
|
||||
* SPDX-License-Identifier: AGPL-3.0-only
|
||||
*/
|
||||
|
||||
import type { NextApiRequest, NextApiResponse } from 'next'
|
||||
|
||||
export enum HttpMethod {
|
||||
GET = 'GET',
|
||||
POST = 'POST',
|
||||
PUT = 'PUT',
|
||||
DELETE = 'DELETE'
|
||||
}
|
||||
|
||||
/**
|
||||
* Intercepts a mock HTTP request, checks the used request method and responds with given response content or an error
|
||||
* that the request method is not allowed.
|
||||
*
|
||||
* @param method The expected HTTP method.
|
||||
* @param req The request object.
|
||||
* @param res The response object.
|
||||
* @param response The response data that will be returned when the HTTP method was the expected one.
|
||||
* @param statusCode The status code with which the response will be sent.
|
||||
* @return true if the HTTP method of the request is the expected one, false otherwise.
|
||||
*/
|
||||
export const respondToMatchingRequest = <T>(
|
||||
method: HttpMethod,
|
||||
req: NextApiRequest,
|
||||
res: NextApiResponse,
|
||||
response: T,
|
||||
statusCode = 200
|
||||
): boolean => {
|
||||
if (method !== req.method) {
|
||||
res.status(405).send('Method not allowed')
|
||||
return false
|
||||
} else {
|
||||
res.status(statusCode).json(response)
|
||||
return true
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue