123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- "use strict";
- const defaultProcessRequest = require("./processRequest.js");
- function graphqlUploadKoa({
- processRequest = defaultProcessRequest,
- ...processRequestOptions
- } = {}) {
-
- async function graphqlUploadKoaMiddleware(ctx, next) {
- if (!ctx.request.is("multipart/form-data")) return next();
- const requestEnd = new Promise((resolve) => ctx.req.on("end", resolve));
- try {
-
- ctx.request.body = await processRequest(
- ctx.req,
- ctx.res,
- processRequestOptions
- );
- await next();
- } finally {
- await requestEnd;
- }
- }
- return graphqlUploadKoaMiddleware;
- }
- module.exports = graphqlUploadKoa;
|