Heim >Web-Frontend >js-Tutorial >Wie aktiviere ich CORS für einen Node.js Express-Server, der mit einem anderen Port kommuniziert?
Hintergrund
Cross-Origin Resource Sharing (CORS) ermöglicht es Webanwendungen, sicher Anfragen an Ressourcen auf anderen Websites zu stellen. Wenn Sie den Node.js Express-Server verwenden, um mit einer anderen API zu kommunizieren, die auf einem anderen Port ausgeführt wird, muss CORS aktiviert werden, um Cross-Origin-Fehler zu vermeiden.
CORS mit Express aktivieren
Um CORS in Express zu aktivieren, installieren Sie das cors-Paket:
npm install cors --save
Importieren Sie das cors-Paket und Express Modul:
const cors = require('cors'); const express = require('express');
Initialisieren Sie die Express-App:
const app = express();
Verwenden Sie die CORS-Middleware, um CORS für alle Anfragen zu aktivieren:
app.use(cors());
Konfigurieren Sie CORS für bestimmte Routen
Wenn Sie CORS nur für bestimmte Routen aktivieren möchten, verwenden Sie Folgendes Syntax:
app.get('/products/:id', cors(), (req, res, next) => { res.json({ msg: 'This is CORS-enabled for a Single Route' }); });
Beispiel
Im bereitgestellten Beispiel möchten Sie CORS auf Port 8080 aktivieren, wo dcm4chee ausgeführt wird. Gehen Sie dazu davon aus, dass Sie den folgenden Code in Ihrer Node.js-App haben:
const express = require('express'); const app = express(); app.get('/request-from-browser', (req, res, next) => { // Your code to handle the request }); app.listen(3000, () => { console.log('Node.js app listening on port 3000'); });
Um CORS für die /request-from-browser-Route auf Port 8080 zu aktivieren, fügen Sie die folgende Middleware vor dem Routencode hinzu :
app.use('/request-from-browser', cors());
Dadurch wird CORS für Anfragen aktiviert, die an /request-from-browser am Port gestellt werden 8080.
Das obige ist der detaillierte Inhalt vonWie aktiviere ich CORS für einen Node.js Express-Server, der mit einem anderen Port kommuniziert?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!