Skip to content

Instantly share code, notes, and snippets.

@whaaaley
Last active February 9, 2019 03:18
Show Gist options
  • Save whaaaley/11365daedc8ff7d05e1b4e6d47f76c20 to your computer and use it in GitHub Desktop.
Save whaaaley/11365daedc8ff7d05e1b4e6d47f76c20 to your computer and use it in GitHub Desktop.

You don't need CORS Middleware 2019

A node example using Zeit's Micro.

const micro = require('micro')

const server = micro(async (request, response) => {
  // set response headers
  response.setHeader('Access-Control-Allow-Headers', 'Access-Control-Allow-Origin')
  response.setHeader('Access-Control-Allow-Methods', 'POST,OPTIONS')
  response.setHeader('Access-Control-Allow-Origin', '*')

  // handle preflighted requests
  if (request.method === 'OPTIONS') {
    micro.send(response, 200, 'ok')
  }

  // your app goes here...
}

// start the server
server.listen(8080, () => {
  console.log('Listening on port 8080')
})

References

  1. Zeit's Micro (github.com)
  2. Node's setHeader Method (nodejs.org)
  3. HTTP Response Headers (developer.mozilla.org)
  4. Preflighted Requests (developer.mozilla.org)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment