{{announcement.body}}
{{announcement.title}}

Enabling CORS in Node.js [Snippets]

DZone 's Guide to

Enabling CORS in Node.js [Snippets]

This post shows how to enable CORS in Node. for your cross-domain requests.

· Web Dev Zone ·
Free Resource

This post shows how to enable Cross Origin Resource Sharing (CORS) in Node. CORS essentially means cross-domain requests.

Simply using this line of code to set a header on your response will enable CORS.

res.header("Access-Control-Allow-Origin", "*");

This code snippet, however, would enable CORS for all resources on your server.

app.use(function(req, res, next) {
  res.header("Access-Control-Allow-Origin", "*");
  res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
  next();
});

This can also be used for resource files as you can see here.

app.get('/test', function(req, res){
  var file = __dirname + '/MyFile.zip';
  res.download(file); // Set disposition and send it.
});

Here is the code of a complete example:

var express = require('express');

var app = express();
app.use(function(req, res, next) {
  res.header("Access-Control-Allow-Origin", "*");
  res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
  next();
});

app.get('/', function (req, res) {
  var data = {
    "Fruits": [
      "apple",
      "orange"    ]
  };

  res.json(data);
});

app.get('/test', function(req, res){
  var file = __dirname + '/ZipFile.zip';
  res.download(file); // Set disposition and send it.
});
Topics:
cors ,cors enabled ,node ,node js

Published at DZone with permission of

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}