Middle+
გახდი თუ არა ოდესმე CORS-ის პრობლემა? როგორ გადაჭერი?
sobes.tech AI
პასუხი AI-სგან
დიახ, CORS (Cross-Origin Resource Sharing) პრობლემები ხშირად წარმოიქმნება ფრონტენდიდან API-სკენ მოთხოვნების დროს, რომელიც მდებარეობს სხვა დომენზე.
CORS — ეს ბრაუზერის უსაფრთხოების მექანიზმია, რომელიც ბლოკავს ერთ დომენზე მყოფ მოთხოვნებს მეორეზე, თუ სერვერმა არ დაუშვა ასეთი მოთხოვნები.
როგორ გადაჭრათ:
- სერვერზე უნდა კონფიგურირდეს პასუხის სათაურები, მაგალითად
Access-Control-Allow-Origin, რათა დაუშვას მოთხოვნები საჭირო დომენებიდან. - განვითარების დროს ხშირად გამოიყენება პროქსი სერვერი, რომელიც გადამისამართებს მოთხოვნებს API-სკენ, რათა გადალახოს ბრაუზერის შეზღუდვები.
- ზოგიერთ შემთხვევაში შეიძლება გამოყენებულ იქნას JSONP ან სხვა გადახრის მეთოდები, მაგრამ ისინი მოძველებულია.
Node.js-ის და Express-ის მაგალითი CORS-ის კონფიგურაციის:
app.use((req, res, next) => {
res.header('Access-Control-Allow-Origin', '*'); // ან კონკრეტული დომენი
res.header('Access-Control-Allow-Methods', 'GET,POST,PUT,DELETE');
res.header('Access-Control-Allow-Headers', 'Content-Type');
next();
});
ძირითადი არის სწორად კონფიგურაცია სერვერზე, რათა ის ღიად დაუშვას მოთხოვნები საჭირო წყაროებიდან.