protected override async ValueTask <IReadOnlyList <GraphQLRequest> > GetRequestsFromBody( HttpRequest httpRequest, CancellationToken cancellationToken) { IFormCollection?form; try { var formFeature = new FormFeature(httpRequest, _formOptions); form = await formFeature.ReadFormAsync(cancellationToken); } catch (Exception exception) { throw ThrowHelper.HttpMultipartMiddleware_Invalid_Form(exception); } // Parse the string values of interest from the IFormCollection HttpMultipartRequest multipartRequest = ParseMultipartRequest(form); IReadOnlyList <GraphQLRequest> requests = RequestParser.ReadOperationsRequest( multipartRequest.Operations); foreach (var graphQLRequest in requests) { InsertFilesIntoRequest(graphQLRequest, multipartRequest.FileMap); } return(requests); }
public override Task <IFormCollection> ReadFormAsync(CancellationToken cancellationToken) { return(FormFeature.ReadFormAsync(cancellationToken)); }