@filen/aws4-express
Version:
Express middleware handlers for validation AWS Signature V4
29 lines (27 loc) • 837 B
text/typescript
import { Request as Aws4Request, Credentials as Aws4Credentials } from 'aws4';
import { AwsVerifyOptions } from '../..';
import { parsers, sendSignedRequest } from './sendSignedRequest';
export const multiParserRequest = async (
optionsAwsVerify: AwsVerifyOptions,
optionsAwsSigned: Aws4Request,
aws4Credentials: Aws4Credentials,
expectedHttpCode: number,
afterSignedRequest?: Aws4Request,
afterAuthorizationSignature?: string,
) => {
await Promise.all(
parsers
.filter((p) => p !== 'none')
.map(async (p) => {
await sendSignedRequest(
optionsAwsVerify,
optionsAwsSigned,
{ parser: p },
aws4Credentials,
expectedHttpCode,
afterSignedRequest,
afterAuthorizationSignature,
);
}),
);
};