code update recorded at: 17/06/25 07:49:20
This commit is contained in:
parent
598015ee82
commit
d3bac17fcb
47
handler.js
47
handler.js
|
|
@ -1,27 +1,38 @@
|
||||||
// Define the handler function
|
// === Handler ===
|
||||||
export const handler = async (req, res) => {
|
export const handler = async (req, res) => {
|
||||||
try {
|
try {
|
||||||
console.log("Request strated")
|
const modified = processPreRequest(req.body?.request);
|
||||||
const { request } = req.body;
|
return res.status(200).json(modified);
|
||||||
const modified = preRequestHandlerWrapper(request);
|
|
||||||
res.status(200).json(modified);
|
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
|
return handleError(err, res);
|
||||||
if (err?.message.includes('Body content-type is not valid JSON')) {
|
|
||||||
res.status(err.statusCode).json({
|
|
||||||
error: err.name,
|
|
||||||
message: err.message,
|
|
||||||
...(err.details && { details: err.details })
|
|
||||||
});
|
|
||||||
} else {
|
|
||||||
res.status(500).json({
|
|
||||||
error: err.name || 'InternalServerError',
|
|
||||||
message: err.message || 'Something went wrong',
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// === Core Processing ===
|
||||||
|
function processPreRequest(request) {
|
||||||
|
if (!request || typeof request !== 'object') {
|
||||||
|
throw new InvalidJsonContentTypeError('Missing or invalid request body', 400);
|
||||||
|
}
|
||||||
|
|
||||||
|
const modified = preRequestHandlerWrapper(request);
|
||||||
|
return modified;
|
||||||
|
}
|
||||||
|
|
||||||
|
// === Unified Error Handler ===
|
||||||
|
function handleError(err, res) {
|
||||||
|
const isJsonTypeError = err instanceof InvalidJsonContentTypeError ||
|
||||||
|
err?.message?.includes('Body content-type is not valid JSON');
|
||||||
|
|
||||||
|
const status = isJsonTypeError ? err.statusCode || 415 : 500;
|
||||||
|
|
||||||
|
return res.status(status).json({
|
||||||
|
error: err.name || 'InternalServerError',
|
||||||
|
message: err.message || 'Unexpected error occurred',
|
||||||
|
...(err.details && { details: err.details }),
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
let currentContext = null;
|
let currentContext = null;
|
||||||
let currentRequest = null;
|
let currentRequest = null;
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user