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