Aktueller Stand
This commit is contained in:
25
backend/node_modules/hono/dist/middleware/timeout/index.js
generated
vendored
Normal file
25
backend/node_modules/hono/dist/middleware/timeout/index.js
generated
vendored
Normal file
@@ -0,0 +1,25 @@
|
||||
// src/middleware/timeout/index.ts
|
||||
import { HTTPException } from "../../http-exception.js";
|
||||
var defaultTimeoutException = new HTTPException(504, {
|
||||
message: "Gateway Timeout"
|
||||
});
|
||||
var timeout = (duration, exception = defaultTimeoutException) => {
|
||||
return async function timeout2(context, next) {
|
||||
let timer;
|
||||
const timeoutPromise = new Promise((_, reject) => {
|
||||
timer = setTimeout(() => {
|
||||
reject(typeof exception === "function" ? exception(context) : exception);
|
||||
}, duration);
|
||||
});
|
||||
try {
|
||||
await Promise.race([next(), timeoutPromise]);
|
||||
} finally {
|
||||
if (timer !== void 0) {
|
||||
clearTimeout(timer);
|
||||
}
|
||||
}
|
||||
};
|
||||
};
|
||||
export {
|
||||
timeout
|
||||
};
|
||||
Reference in New Issue
Block a user