Sobes.tech
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();
});

ძირითადი არის სწორად კონფიგურაცია სერვერზე, რათა ის ღიად დაუშვას მოთხოვნები საჭირო წყაროებიდან.