Müzakirə

Expressjs ile Mesaj ve Log Gönderme: CORS (Cross-Origin) Hatası Kesin Çözümü

Başladan Byte · 30 avq 2026 04:26 · 1 Baxış · 0 Cavablar
Mövzunu Açan #0
CORS (Cross-Origin Resource Sharing), farklı alanlar arasında kaynak paylaşımını kontrol eden bir güvenlik mekanizmasıdır. Web uygulamalarında, bir alan adı üzerindeki bir kaynağa (örneğin API) başka bir alan adından erişim sağlanmak istendiğinde CORS hataları sıkça karşılaşılan bir durumdur. Özellikle Express.js ile geliştirilen uygulamalarda, bu durum API ile istemci arasında veri alışverişi sırasında sorun yaratabilir.

CORS hatasının önüne geçmek için öncelikle Express uygulamanızda CORS middleware'ini kullanmalısınız. Bunu yapmanın en yaygın yolu, npm üzerinden cors paketini yüklemektir. Aşağıdaki adımları izleyerek bu sorunu çözebilirsiniz:

  1. Cors Paketini Yükleme:
Terminalde aşağıdaki komutu çalıştırarak CORS paketini yükleyin:
CODE
1   npm install cors


  1. Express Uygulamanıza Ekleyin:
Aşağıdaki gibi uygulamanızda cors middleware’ini ekleyin:
CODE
123456789101112131415   const express = require('express');
   const cors = require('cors');
   const app = express();

   // CORS middleware'ini kullanın
   app.use(cors());

   // Diğer middleware ve route'larınızı tanımlayın
   app.get('/api/message', (req, res) => {
       res.json({ message: "CORS sorunu çözüldü!" });
   });

   app.listen(3000, () => {
       console.log('Sunucu 3000 portunda çalışıyor.');
   });


  1. Özel Ayarlar ile Konfigürasyon:
Eğer yalnızca belirli alanlardan gelen taleplere izin vermek istiyorsanız, cors fonksiyonuna özel ayarlar geçebilirsiniz:
CODE
12345   app.use(cors({
       origin: 'http://example.com', // Belirli bir alan adı
       methods: ['GET', 'POST'], // İzin verilen HTTP metodları
       allowedHeaders: ['Content-Type', 'Authorization'] // İzin verilen başlıklar
   }));


Bu adımlar CORS hatasını kesin olarak çözebilir. Ancak, uygulamanızın güvenlik gereksinimlerini göz önünde bulundurarak, hangi alanların erişim iznine sahip olduğunu dikkatlice belirlemelisiniz. CORS ayarlarını esnek tutmak, uygulamanızın güvenliğini tehlikeye atabilir. Dolayısıyla, yalnızca güvendiğiniz kaynakların erişimine izin vermek en iyi uygulamadır.

Cavab vermək üçün daxil olmalısınız.

0 sitat seçildi