myshenin / aws-lambda-multipart-parser

Parser of multipart/form-data requests for AWS Lambda
MIT License
74 stars 38 forks source link

getValueIgnoringKeyCase causing issues with AWS parameter validation #7

Closed jalleyne closed 6 years ago

jalleyne commented 6 years ago

Add the getValueIgnoringKeyCase method to the Object prototype breaks upload to S3 using the AWS SDK. This is because the SDK checks the params object against a strict schema.

{ InvalidParameterType: Expected params.getValueIgnoringKeyCase to be a string
at ParamValidator.fail (/var/task/node_modules/aws-sdk/lib/param_validator.js:50:37)
at ParamValidator.validateType (/var/task/node_modules/aws-sdk/lib/param_validator.js:222:10)
at ParamValidator.validateString (/var/task/node_modules/aws-sdk/lib/param_validator.js:154:32)
at ParamValidator.validateScalar (/var/task/node_modules/aws-sdk/lib/param_validator.js:130:21)
at ParamValidator.validateMember (/var/task/node_modules/aws-sdk/lib/param_validator.js:94:21)
at ParamValidator.validateStructure (/var/task/node_modules/aws-sdk/lib/param_validator.js:75:14)
at ParamValidator.validateMember (/var/task/node_modules/aws-sdk/lib/param_validator.js:88:21)
at ParamValidator.validate (/var/task/node_modules/aws-sdk/lib/param_validator.js:34:10)
at Request.VALIDATE_PARAMETERS (/var/task/node_modules/aws-sdk/lib/event_listeners.js:125:42)
at Request.callListeners (/var/task/node_modules/aws-sdk/lib/sequential_executor.js:105:20)
at callNextListener (/var/task/node_modules/aws-sdk/lib/sequential_executor.js:95:12)
at /var/task/node_modules/aws-sdk/lib/event_listeners.js:85:9
at finish (/var/task/node_modules/aws-sdk/lib/config.js:320:7)
at /var/task/node_modules/aws-sdk/lib/config.js:338:9
at EnvironmentCredentials.get (/var/task/node_modules/aws-sdk/lib/credentials.js:126:7)
at getAsyncCredentials (/var/task/node_modules/aws-sdk/lib/config.js:332:24)
message: 'Expected params.getValueIgnoringKeyCase to be a string',
code: 'InvalidParameterType',
time: 2018-02-06T16:01:44.169Z }