Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • May 25 12:31
    jangryga commented #647
  • May 25 12:30
    jangryga commented #647
  • May 25 07:46
    lucadv commented #837
  • May 23 15:57
    ifeltsweet commented #844
  • May 23 15:56
    ifeltsweet commented #844
  • May 23 15:56
    ifeltsweet commented #844
  • May 23 15:55
    ifeltsweet commented #844
  • May 23 15:50
    ifeltsweet synchronize #844
  • May 23 15:39
    ifeltsweet commented #844
  • May 23 15:29
    ifeltsweet commented #844
  • May 23 15:16
    willfarrell commented #844
  • May 23 15:09
    ifeltsweet opened #844
  • May 23 08:15
    skilbjo commented #837
  • May 20 19:37

    github-actions[bot] on gh-pages

    deploy: 8ec3224e773ff6938ab446aā€¦ (compare)

  • May 20 19:34
    willfarrell commented #842
  • May 20 19:34

    willfarrell on main

    docs: fix handler typo Merge pull request #842 from gaā€¦ (compare)

  • May 20 19:34
    willfarrell closed #842
  • May 20 19:33
    willfarrell commented #843
  • May 20 18:55
    gautamsabaresh labeled #843
  • May 20 18:55
    gautamsabaresh opened #843
Doruk Kutlu
@d0ruk
const handler = middy(awesomeLogic)
  .use(jsonBodyParser())
  .use(cors());

export default handler;

async function awesomeLogic(evt, ctx) {
  // typeof evt.body === "string"
  // it's a POST evt with content-type: application/json
}
according to the src, middleware parses the body back into evt.body
thus i expect that to be typeof evt.body === "object"
what am i doing wrong?
Luciano Mammino
@lmammino
Hello @d0ruk, are you checking if your Content-Type headers are sent in canonical format (right casing)?
if you are not sure wheter they come in canonical format or not, you can use the httpHeaderNormalizer middleware before the jsonBodyParser.
Let me know if this fixes your problem
Doruk Kutlu
@d0ruk
that fixed it
thx
Luciano Mammino
@lmammino
You are welcome @d0ruk, glad it worked for you ;)
Doruk Kutlu
@d0ruk
is there a reference repo for middy integration? i.e. examples
Luciano Mammino
@lmammino
@d0ruk, Do you mean writing your own middlewares?
Doruk Kutlu
@d0ruk
no, i read the docs.md
i meant a repo where i can scan some code
Luciano Mammino
@lmammino
regarding middy internals or use cases?
Doruk Kutlu
@d0ruk
to gauge best practices
use cases
Luciano Mammino
@lmammino
@DavidWells created an example repo, it might be useful: https://github.com/DavidWells/middy-example
Doruk Kutlu
@d0ruk
cheers
Luciano Mammino
@lmammino
You are welcome, @d0ruk, let us know if there's anything that is not clear or that we can improve in your opinion :)
Doruk Kutlu
@d0ruk
will do
Jose Santacruz
@joseSantacruz
Hi all, quick serverless question is there a way to preview the generated cloud formation files without building all the artifacts??
Chanlito
@chanlito
I found middyjs today, and I have to say, thank you, to @lmammino & all the contributors.
Luciano Mammino
@lmammino
@chanlito, thanks to your for trying middy :)
@joseSantacruz did you figure it out a way? I know that serverless framework has a command to build a package but not publish it, that way you should be able to see the cloudformation files
Thomas Edwards
@thomasedwards
I just found Middy today :heart_eyes:
Just casually re-writing my entire project now
dkatavic
@dkatavic
hello @thomasedwards . I hope you are gonna find it useful :smile:
Luciano Mammino
@lmammino
@thomasedwards looking forward to receiving your feedbacks :P
Today we just passed 200 stars!!! :)
Thomas Edwards
@thomasedwards
amazing!
has anybody ever had a Cannot destructure propertyhttpContentNegotiationof 'undefined' or 'null' error?
import middy from 'middy'

const {
  httpContentNegotiation,
  httpErrorHandler
} = middy.middlewares

const lovelyStuff = event => {
  // do stuff
}

const handler = middy(lovelyStuff)
  .use(httpContentNegotiation({ availableMediaTypes: ['application/json'] }))
  .use(jsonBodyParser())
  .use(httpErrorHandler())

export { handler }
I think it's because I'm using imports
Thomas Edwards
@thomasedwards
yup changed it to
const {
  httpContentNegotiation,
  httpErrorHandler,
  jsonBodyParser,
  validator
} = require('middy/middlewares')
Thomas Edwards
@thomasedwards
so when I import anything from middy/middlewares, I get the entire AWS library because of the S3 middleware?
this bumps up my file size from less than 1MB to 3.5MB
Thomas Edwards
@thomasedwards
done some digging and opened an issue: middyjs/middy#154
Luciano Mammino
@lmammino
Hello @thomasedwards , thanks a million for your contribution and sorry for the long wait, i was away for a conference :)
looking into your issue right now
Thomas Edwards
@thomasedwards
thank you! =)
have closed it, will investigate further
Thomas Edwards
@thomasedwards
also ā€“ any thoughts about giving more information from the validator? middyjs/middy#155
I have now realised that actually just editing the validator to pass the errors through as a string
rather than using 'Event object failed validation' would be possibly safer
Luciano Mammino
@lmammino
@thomasedwards thank you for pointing that out. I am currently slowly going over all the open issues an PR in my free time. I will try to address everything later this evening
Thomas Edwards
@thomasedwards
no worries! let me know if there's anything I can do to help
have replied to your comments, thanks @lmammino ! middyjs/middy#155
Thomas Edwards
@thomasedwards
Super loving 0.12 :thumbsup: Sooo much easier to debug now with the beautiful extreme logging ā€“ thanks team! :heart:
Thomas Edwards
@thomasedwards
Okay, I think I have a really tricky problem...