Sobes.tech
Middle+

Оё шумо ягон вақт бо мушкилии CORS рӯ ба рӯ шудаед? Чӣ гуна онро ҳал кардед?

sobes.tech AI

Ҷавоб аз AI

Бале, мушкили CORS (Cross-Origin Resource Sharing) одатан ҳангоми frontendдан ба API, ки дар дигар домен ҷойгир аст, пайдо мешавад.

CORS — ин механизми бехатарии браузер аст, ки талабҳоро аз як домен ба дигарро мепӯшад, агар сервер чунин талабҳоро иҷозат надиҳад.

Чӣ гуна ҳал кардан:

  • Дар сервер бояд сарлавҳаҳои ҷавобро танзим кард, масалан Access-Control-Allow-Origin, то талабҳоро аз доменҳои зарурӣ иҷозат диҳад.
  • Барои рушд, аксар вақт сервери прокси истифода мешавад, ки талабҳоро ба API равона мекунад, то маҳдудиятҳои браузерро убур кунад.
  • Дар баъзе ҳолатҳо, метавон JSONP ё дигар усулҳои убурро истифода бурд, аммо онҳо кӯҳна шудаанд.

Масалан, конфигуратсияи CORS дар Node.js бо Express:

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

Ключи асосӣ — танзими дуруст кардани сервер, то ки талабҳоро аз манбаъҳои зарурӣ ошкоро иҷозат диҳад.