no-cors это вообще из другой оперы. Эта опция позволяет выполнить только простой запрос (HEAD, GET, POST) с ограниченным набором заголовков (Accept, Accept-Language, Content-Language, Content-Type и Range), но не даёт JS доступа к свойствам Response, то есть телу и заголовкам ответа.
Сама политика CORS контролируется браузером и не даёт делать cross-origin запросы, если сервер, к которому сделан запрос, не возвращает явного разрешения на это в заголовках ответа. Для обхода надо делать запрос через свой бэкенд, который выполняет в этом случае роль прокси для внешнего ресурса.