Почему на одно есть CORS а на других нет?

CORS (Cross-Origin Resource Sharing) - это механизм, который позволяет веб-браузерам запрашивать ресурсы с другого домена. Он предназначен для обеспечения безопасности и предотвращения атак междоменной совместимости.

Причина, по которой на одних сайтах есть CORS, а на других нет, может быть связана с реализацией самого веб-приложения и его политикой безопасности.

Это может зависеть от типа авторизации, который используется на веб-сайте. Некоторые сайты могут ограничивать источники, с которых могут быть загружены ресурсы, для повышения безопасности. Это может вызывать ошибки CORS при попытке запросить ресурс с другого домена, отличного от ожидаемого.

Кроме того, настроенные на сервере заголовки могут устанавливать политику CORS. Некоторые серверы могут быть настроены таким образом, чтобы разрешать запросы с любого источника, запрещая проблему CORS. В таких случаях ответ на вопрос будет быть - так как на сервере установлены соответствующие заголовки, то проблем с CORS не возникает.

Однако, если сервер не устанавливает соответствующие заголовки, то браузер может блокировать запросы к ресурсам другого домена, чтобы предотвратить атаки CSRF (подмена запросов). Именно поэтому разработчики веб-приложений должны настроить серверные заголовки CORS, чтобы управлять политикой доступа к своим ресурсам.

Когда веб-приложение использует Go для своей разработки, существует несколько подходов для реализации и настройки CORS. Один из способов - это использование пакетов middleware для обработки CORS в Go, таких как "github.com/rs/cors" и "github.com/go-chi/cors". Эти пакеты могут быть использованы для настройки политик доступа и управления ответами CORS.

При выборе и использовании этих пакетов, разработчик должен учитывать требования своего веб-приложения и определить, какие источники должны быть разрешены или запрещены для доступа к ресурсам.

Кроме того, выбор между использованием CORS и его отсутствием также зависит от конкретных требований разработчика. В некоторых случаях, веб-приложение может использовать уникальные механизмы авторизации и аутентификации, которые могут обеспечить безопасность без необходимости использования CORS.

Наконец, наличие или отсутствие CORS может быть связано с архитектурным решением веб-приложения. Возможно, что некоторые сайты специально не используют CORS, поскольку они разработаны для работы в пределах одного домена или же используют другие механизмы для обеспечения безопасности междоменных запросов.

В целом, наличие или отсутствие CORS на веб-сайтах зависит от общей стратегии безопасности и требований веб-приложения. Каждый сайт может иметь свои особенности, поэтому важно разбираться в требованиях и выбирать правильные инструменты и подходы для реализации безопасности и контроля доступа к ресурсам.