Heim >Web-Frontend >js-Tutorial >Wie behebt man CORS-Fehler in Node.js mit Express?

Wie behebt man CORS-Fehler in Node.js mit Express?

Patricia Arquette
Patricia ArquetteOriginal
2024-11-28 01:00:14915Durchsuche

How to Solve CORS Errors in Node.js with Express?

So aktivieren Sie CORS Node.js mit Express

Problembeschreibung

Cross-Origin CORS-Fehler (Resource Sharing) treten auf, wenn eine Anwendung, die auf einem anderen Ursprung läuft, versucht, auf Ressourcen von einem Server auf einem anderen Ursprung zuzugreifen. Wenn Sie Cornerstone.js verwenden, um DICOM-Dateien von einem WADO-Dienst abzurufen, kann dieser Fehler aufgrund der Port-Diskrepanz zwischen dem DICOM-Dienst (läuft auf Port 8080) und der Client-Anwendung (läuft auf Port 3000) auftreten.

Lösung

Um CORS in Node.js-Anwendungen mit Express zu aktivieren, befolgen Sie diese Schritte:

1. CORS-Middleware installieren:

npm install cors --save

2. CORS-Middleware zur Express-App hinzufügen:

Cors- und Express-Module importieren, eine Express-App erstellen und CORS global mit der Methode use() aktivieren.

const cors = require('cors');
const express = require('express');
const app = express();

app.use(cors());

Zusätzliche Hinweise:

  • Die cors()-Middleware fügt allen die folgenden Header hinzu Antworten:

    • Access-Control-Allow-Origin: * (erlaubt Anfragen von jedem Ursprung)
    • Access-Control-Allow-Headers: Content-Type,Authorization (ermöglicht bestimmte Header in Anfragen)
    • Access-Control-Allow-Methoden: GET,POST,PUT,PATCH,DELETE,OPTIONS (Zulassen bestimmter HTTP-Methoden)
  • Diese Lösung ermöglicht CORS für alle Anfragen an die Express-App, einschließlich des Ports 8080, von dem die DICOM-Dateien abgerufen werden.
  • Bei Bedarf Für eine detailliertere Kontrolle der CORS-Einstellungen können Sie Optionen an die cors()-Middleware übergeben. Weitere Informationen finden Sie in der Dokumentation des cors npm-Pakets.

Das obige ist der detaillierte Inhalt vonWie behebt man CORS-Fehler in Node.js mit Express?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn