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();
});
Ключи асосӣ — танзими дуруст кардани сервер, то ки талабҳоро аз манбаъҳои зарурӣ ошкоро иҷозат диҳад.