CORS Configuration in Node.js

From the Express.js cheat sheet · CORS & Security · verified Jul 2026

CORS Configuration

Enable Cross-Origin Resource Sharing for API access from browsers

javascript
const cors = require('cors');

// Allow all origins (development)
app.use(cors());

// Specific origin
app.use(cors({
  origin: 'https://example.com'
}));

// Multiple origins
const corsOptions = {
  origin: function (origin, callback) {
    const allowedOrigins = ['https://example.com', 'https://app.example.com'];
    if (allowedOrigins.indexOf(origin) !== -1 || !origin) {
      callback(null, true);
    } else {
      callback(new Error('Not allowed by CORS'));
    }
  },
  credentials: true // Allow cookies
};

app.use(cors(corsOptions));
💡 CORS is required for browser-based API calls
⚠️ Don't use wildcard (*) origin in production
🔒 Set credentials: true for cookie support
✅ Configure specific origins for security

More Node.js tasks

Back to the full Express.js cheat sheet