2 года назад
Подключение js кода к API, CORS и зачем он нужен. Работая над проектом, мы столкнулись с проблемой заголовков CORS. Для приема данных требовались входящие заголовки, которые не отправлялись с сервера. Итак, что же такое CORS? CORS - стандарт передачи данных между источником и приемником. Передавая данные, он также передает заголовки, с помощью которых и происходит чтение данных. Итак, принимающее запрос устройство получает заголовки, сверяет их со списком разрешенных источников и только после этого принимает запрос. Все современные веб-браузеры используют политику одинакового источника. То есть веб-приложения, которые используют API, могут спрашивать данные только с домена, с которого шла загрузка, если cors-заголовки не используются. CORS заголовки существует для защиты данных. При появлении таких тегов, как <img>, <script>,<audio> и многие другие безопасность пользователей оказалась под угрозой, потому что вместо картинки или аудио мы можем получить скрипт, который запустится на устройстве и принесет некоторые проблемы. Стоит сказать о том, что сервера также должны поддерживать заголовки cors, иначе ответ прочитан не будет. В нашем случае требовалась настройка nginx, так как именно он использовался в нашем проекте, в качестве обратного прокси сервера. Настроить отправку заголовков можно и другими способами, например, apache, выбор зависит от стека, который используется в проекте. #programming #programmer #it #программирование #програмист #сервер #клиент #язык #Python #NodeJS #TimeTable #React #API #CORS #безопасность
Что такое CORS и как настроить заголовки? Когда браузер выполняет запрос к ресурсу на другом домене, он отправляет предварительный запрос (preflight request) для проверки, разрешено ли получение данных с этого домена. Затем сервер может ответить с разрешением или запретом доступа к ресурсу. Для настройки заголовков и разрешения CORS запросов, вам понадобится настроить сервер. CORS (Cross-Origin Resource Sharing) - это механизм, который позволяет веб-страницам запрашивать ресурсы с другого домена (origin), отличного от их собственного. Это важная функция, которая обеспечивает безопасность и контроль при работе с ресурсами на разных домена 📌Читать далее #software #opensource #mail