Nano Hash - криптовалюты, майнинг, программирование

Почему CORS отключен по умолчанию?

Хорошо, во-первых, я прекрасно понимаю, что у нас есть куча ответов на этот вопрос и множество статей на эту тему. Я просто прочитал эти ответы за секунду до того, как напечатать это:

Почему CORS без учетных данных запрещен?.
Является ли CORS плохой практикой?

И т. д. Моя конкретная ситуация такова: я только что настроил WebAPI2 для своего практического проекта, внешний интерфейс которого работает через синхронизацию браузера gulp. Я понятия не имею, как выбираются эти порты, но предположим, что веб-API работает на порту http://localhost:1234/ и синхронизация браузера создает веб-сайт на http://localhost:4321/. Итак, я обращаюсь к API через угловой $http и получаю известную ошибку CORS (метод контроллера API действительно срабатывает), поэтому я предполагаю, что возврат API не разрешен. Изменить: я исправил это, установив пакет CORS для веб-API через NuGet (Статья здесь) перед тем, как задать этот вопрос, просто дайте ссылку для тех, кому он может понадобиться позже.

Итак, я подумал, что если я разверну это, ЛЮБОЙ запрос будет отклонен, если я что-то не упустил. Или это не будет отклонено из-за того, что я чего-то не понимаю? Является ли запрет CORS просто возвратом из дней MVC? Или есть какая-то цель с API?

Может быть, я просто разглагольствую, но это меня чертовски смущает.


Ответы:


1

CORS основан на заголовках ответов, возвращаемых из API. Это не API отклоняет ответ на запрос, веб-браузер явно запрещает обработку ответа. API обработает запрос как обычно.

При работе с чем-либо, кроме GET, CORS также требует сначала «предварительного» запроса к API, чтобы гарантировать, что последующие запросы разрешены. Это среди отправки заголовков назад — это то, что предоставляет пакет nuget веб-API.

CORS по умолчанию отключен в целях безопасности.

07.03.2016
Новые материалы

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

Как написать эффективное резюме
Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

Частный метод Python: улучшение инкапсуляции и безопасности
Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

Как я автоматизирую тестирование с помощью Jest
Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

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

Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..