DEV Community

Elio Struyf
Elio Struyf

Posted on • Originally published at eliostruyf.com on

Parse application/x-www-form-urlencoded in Azure Function

For a Mailchimp webhook, I had to parse the application/x-www-form-urlencoded form data to JSON. Azure Functions does not automatically do this for you, so you have to provide your parser. I knew that I had already done this, so I went on a search journey through my code.

To make it easier next time, I wanted to share the code snippet with the rest of you. As you will notice, there isn't a lot of code required.

import { AzureFunction, Context, HttpRequest } from "@azure/functions";
import { parse, ParsedQs } from 'qs';

const httpTrigger: AzureFunction = async function (context: Context, req: HttpRequest): Promise<void> {
  if (req.rawBody) {
    const parsedData: ParsedQs = parse(req.rawBody);

    context.res = {
      body: parsedData
    };
  }

  context.res = {
    body: 'No raw body data'
  };
};

export default httpTrigger;
Enter fullscreen mode Exit fullscreen mode

This code snippet makes use of the qs (querystring) dependency. To install this dependency to your project, all you need to do is: npm i qs -S -E.

Speedy emails, satisfied customers

Postmark Image

Are delayed transactional emails costing you user satisfaction? Postmark delivers your emails almost instantly, keeping your customers happy and connected.

Sign up

Top comments (0)

AWS Security LIVE!

Join us for AWS Security LIVE!

Discover the future of cloud security. Tune in live for trends, tips, and solutions from AWS and AWS Partners.

Learn More

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay