Vollständiger CORS-Konfigurationsleitfaden mit Claude Code
Erfahren Sie alles über die CORS-Konfiguration mit Claude Code. Mit praktischen Tipps und Codebeispielen.
CORS-Konfiguration mit Claude Code korrekt implementieren
CORS (Cross-Origin Resource Sharing) ist ein Mechanismus zur Steuerung der sicheren Kommunikation zwischen verschiedenen Origins. Konfigurationsfehler führen zu Sicherheitsrisiken oder Funktionsstörungen. Mit Claude Code können Sie eine den Anforderungen entsprechende CORS-Konfiguration präzise implementieren.
CORS-Grundkonzepte
Ablauf eines Preflight-Requests
> Erkläre den Mechanismus von CORS-Preflight-Requests.
> Einschließlich Sequenzdiagramm.
Bei “nicht-einfachen Requests” sendet der Browser einen OPTIONS-Request als Preflight-Request, um die Erlaubnis des Servers zu prüfen. Dies betrifft unter anderem benutzerdefinierte Header und POST-Requests im JSON-Format.
Konfiguration in Express.js
Umgebungsspezifische CORS-Konfiguration
> Erstelle eine CORS-Konfiguration für Express.js.
> Anforderungen:
> - Produktion: nur bestimmte Origins erlauben
> - Entwicklung: localhost erlauben
> - Authentifizierte Requests unterstützen
> - Preflight-Cache
// src/middleware/cors.ts
import cors from 'cors';
const allowedOrigins: Record<string, string[]> = {
production: [
'https://myapp.example.com',
'https://admin.example.com',
],
development: [
'http://localhost:3000',
'http://localhost:5173',
],
};
export const corsMiddleware = cors({
origin: (origin, callback) => {
const env = process.env.NODE_ENV || 'development';
const origins = allowedOrigins[env] || allowedOrigins.development;
// Server-zu-Server-Kommunikation (ohne Origin) erlauben
if (!origin) return callback(null, true);
if (origins.includes(origin)) {
callback(null, true);
} else {
callback(new Error(`CORS: ${origin} ist nicht erlaubt`));
}
},
credentials: true,
methods: ['GET', 'POST', 'PUT', 'DELETE', 'PATCH'],
allowedHeaders: ['Content-Type', 'Authorization', 'X-Request-ID'],
exposedHeaders: ['X-Total-Count', 'X-Request-ID'],
maxAge: 86400, // Preflight-Cache: 24 Stunden
});
Konfiguration in Next.js
// next.config.js
const nextConfig = {
async headers() {
return [
{
source: '/api/:path*',
headers: [
{ key: 'Access-Control-Allow-Origin', value: 'https://myapp.example.com' },
{ key: 'Access-Control-Allow-Methods', value: 'GET,POST,PUT,DELETE' },
{ key: 'Access-Control-Allow-Headers', value: 'Content-Type,Authorization' },
{ key: 'Access-Control-Allow-Credentials', value: 'true' },
{ key: 'Access-Control-Max-Age', value: '86400' },
],
},
];
},
};
CORS-Konfiguration in Nginx/CDN
> Füge CORS-Einstellungen zum Nginx-Reverse-Proxy hinzu.
location /api/ {
if ($request_method = 'OPTIONS') {
add_header 'Access-Control-Allow-Origin' $http_origin;
add_header 'Access-Control-Allow-Methods' 'GET, POST, PUT, DELETE';
add_header 'Access-Control-Allow-Headers' 'Content-Type, Authorization';
add_header 'Access-Control-Allow-Credentials' 'true';
add_header 'Access-Control-Max-Age' 86400;
return 204;
}
add_header 'Access-Control-Allow-Origin' $http_origin always;
add_header 'Access-Control-Allow-Credentials' 'true' always;
proxy_pass http://backend;
}
Fehlerbehebung
Häufige Fehler und Lösungen
Wenn Sie Claude Code die Browser-Konsolenfehler geben, erhalten Sie sofort Ursachen und Lösungen.
Fehlerbeispiel:
Access to XMLHttpRequest at 'https://api.example.com/data' from origin
'https://myapp.com' has been blocked by CORS policy: No
'Access-Control-Allow-Origin' header is present on the requested resource.
Häufige Ursachen:
- Serverseitig sind keine CORS-Header gesetzt
- Bei
credentials: truewirdAccess-Control-Allow-Origin: *verwendet (ein spezifischer Origin muss angegeben werden) - Der OPTIONS-Methoden-Preflight-Request wird nicht behandelt
Sicherheitshinweise
Access-Control-Allow-Origin: * sollte nur für öffentliche APIs ohne Authentifizierung verwendet werden. Bei authentifizierten Requests muss immer ein spezifischer Origin angegeben und mit credentials: true kombiniert werden.
Zusammenfassung
Mit Claude Code können Sie umgebungsspezifische CORS-Konfigurationen präzise implementieren und die Fehlerbehebung effizienter gestalten. Siehe auch Web-Sicherheitsheader-Konfiguration und den API-Entwicklungsleitfaden.
Details zu CORS finden Sie in den MDN Web Docs - CORS.
Kostenloses PDF: Claude-Code-Spickzettel in 5 Minuten
Trag einfach deine E-Mail-Adresse ein – wir senden dir den A4-Spickzettel als PDF sofort zu.
Wir behandeln deine Daten sorgfältig und senden niemals Spam.
Über den Autor
Masa
Ingenieur, der Claude Code intensiv nutzt. Betreibt claudecode-lab.com, ein Tech-Medium in 10 Sprachen mit über 2.000 Seiten.
Ähnliche Artikel
7 Prüfungen, bevor du täglich einen mehrsprachigen Claude-Code-Artikel veröffentlichst
Eine praktische Checkliste, damit tägliche mehrsprachige Claude-Code-Artikel nicht an fehlenden Sprachen, kaputten CTAs oder veralteten Live-Seiten scheitern.
Was sind Codex Automations? Content Ops mit KI planen und ausfuehren
Praktischer Leitfaden fuer Codex Automations: Analytics, Themenwahl, Artikel, CTA, Deployment und Monetarisierung.
Claude Code × GCP Cloud Functions Komplettanleitung | Serverlose Funktionen blitzschnell entwickeln
GCP Cloud Functions mit Claude Code optimieren. HTTP/Pub/Sub/Firestore-Trigger implementieren, lokal testen und Deployments automatisieren — mit echten Codebeispielen aus Masas Praxiserfahrung.