Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • Nov 23 16:59
    willfarrell commented #746
  • Nov 23 16:42
    willfarrell closed #751
  • Nov 23 16:42
    willfarrell commented #752
  • Nov 23 16:42

    willfarrell on main

    docs: fix typo Merge pull request #752 from ni… (compare)

  • Nov 23 16:42
    willfarrell closed #752
  • Nov 23 15:03
    nitinrathi opened #752
  • Nov 19 15:59
    willfarrell commented #751
  • Nov 19 09:22
    aedris0 commented #751
  • Nov 18 13:50
    SET001 closed #750
  • Nov 18 13:29
    shelou opened #751
  • Nov 18 11:42
    SET001 edited #750
  • Nov 18 11:41
    SET001 edited #750
  • Nov 18 11:41
    SET001 opened #750
  • Nov 16 18:53
    willfarrell commented #746
  • Nov 16 18:53
    willfarrell commented #746
  • Nov 16 18:21
    fredericbarthelet commented #746
  • Nov 16 16:34
    willfarrell commented #749
  • Nov 16 16:31
    willfarrell commented #626
  • Nov 16 16:31
    willfarrell commented #626
  • Nov 16 07:47
    J4YF7O commented #626
Luciano Mammino
@lmammino
WOOW great news!
Luciano Mammino
@lmammino
will Farrell
@willfarrell
I was wondering how they allowed "streaming" file changes since lambda doesn't support streamed responses. Not a fan of the pattern their using, I think we could make this much better. I was hoping they would pass in a read stream and we could return a transform stream. I'll for sure use this feature once terraform supports it. I see a lot of value in having a middleware for this to make it way easier.
Luciano Mammino
@lmammino
I had the exact same thought and I was a bit disappointed too :D However, from what i have seen in the api to create a custom lambda executor, I think doing a streaming implementation for Node.js could be feasible. I had a look sometime ago but if I remember correclty in that abstraction you have access to raw http requests, therefore you should be able to access streaming requests and provide streaming responses...
will Farrell
@willfarrell
Seriously, this is possible now? I've been waiting for streaming responses since apig was introduced. We have to add this to middy :P
Luciano Mammino
@lmammino
I might have to experiment a little with creating a non-standard executor
and see if my instincts are actually correct :D
will Farrell
@willfarrell
having stream requests/responses in middy would be a game-changer.
will Farrell
@willfarrell
@/all Looking for some feedback. I'm looking into adding in support for parsing nested aws events, ex: s3 -> sns -> sqs. In this example would you prefer using; a) single middlware for the source event (s3 in this case) that parses the wrapper events (sns/sqs) as well; b) have a parser for each event, and each would need to be applied in the correct order of use; c) single middleware for any event with wrapper event parsing.
They all have their pros/cons. Let me know what you think, which would you prefer to use?
Luciano Mammino
@lmammino
https://nodeweekly.com/issues/384 A middy interview here! <3
will Farrell
@willfarrell
middy is listed on the new ajv website homepage. https://ajv.js.org/
khirodAsurion
@khirodAsurion
Guys , i have a very simple payload via api-0gateway to lambda {"email":"abc@gmail.com"}. and my Schema looks like this .const inputRequestSchema = { type: 'object', required: [ 'email', ], properties: { email: { type: 'string', }, }, additionalProperties: true, }; when i fire up the request , i get error message: 'must have required property email'les/@middy/core/index.js?:80:5) {ex.js?:51:21) Event object failed validation. any help here ? i am using following dependency "@middy/core": "^2.2.0", "@middy/http-error-handler": "^2.2.0", "@middy/http-header-normalizer": "^2.2.0", "@middy/http-json-body-parser": "^2.2.0", "@middy/validator": "^2.2.0". . use of middleware code \ export const handler = middy(handlerLambda) .use(httpHeaderNormalizer()) .use(httpJsonBodyParser()) .use(validator({ inputSchema: inputRequestSchema })) .use(httpErrorHandler());
will Farrell
@willfarrell
@khirodAsurion your input schema doesn't match what API Gateway sends in. Should look something like: { "queryStringParameters":{...}, "body":{...} }. https://docs.aws.amazon.com/lambda/latest/dg/services-apigateway.html
khirodAsurion
@khirodAsurion
@willfarrell thanks for the quick response. but I am only interested to validating body . in that case should I always have to provide other details also in schema ? or is there any other way ? See that I am adding additionalProperties: true, just to make sure other added by APIGateway do not create issue .but still it says message: 'must have required property email'les/@middy/core/index.js?:80:5) {ex.js?:51:21) Event object failed validation
will Farrell
@willfarrell
Your schema only need to include what you want to validate, but must expected the warper object around your request.
khirodAsurion
@khirodAsurion
Thanks @willfarrell . That worked. ! Although I am not sure if i use .use(httpErrorHandler()); I still do not see the real error around the Schema diff thrown as an error . It only says very generic message
will Farrell
@willfarrell
If you want to return errors, you need to handler ajv errors yourself. There isn't a standard everyone follows so we can't do it for you. httpErrorHandler is a catch all if an error hasn't already been handled. It returns a generic message (which can be overridden), because you don't want stack traces returned to the consumer, leading to leaking too much information (security best practice).
khirodAsurion
@khirodAsurion
thanks
Maximillian Naza
@2Clutch
Hello. I currently have an Express API I'm looking to migrate to Middy. Is there a tutorial or some piece of documentation I can use as a compass to guide me in my efforts?
will Farrell
@willfarrell
Not that's I'm aware of, but if you find one, I'd be happy to merge it into the docs.
Maximillian Naza
@2Clutch
That's unfortunate. I'm not sure to translate the concept of an endpoint over to middy. or in other words, how do I determine what to do with a request once I receive it?
Has anyone here built an API with middy? If so, I'd love to take a look at it (assuming it's in a public repo)
Vincent Nmeregini
@v.nmeregini_gitlab
Hi everyone, I'll love to know if it’s possible to auto-generate swagger documentation using middy.
will Farrell
@willfarrell