Я разрабатываю веб-приложение с интерфейсом AngularJS и бэкэндом Rails.
Моя цель состоит в том, чтобы полностью разделить их, поскольку приложение Rails в конечном итоге будет переведено на простой сервер REST, а интерфейс AngularJS будет лишь одним из нескольких различных клиентов, использующих серверную часть. По этой причине я не хочу интегрировать интерфейс в конвейер ресурсов Rails или что-то подобное.
Приложение Rails работает локально на порту 3000. Внешний интерфейс использует Gulp для компиляции статических ресурсов и BrowserSync, который содержит сервер разработки, который я запускаю на порту 3001.
В целях разработки, как я могу заставить приложение AngularJS общаться с сервером Rails, избегая этой ошибки браузера (которую я ожидал) при выполнении HTTP-запроса через https://docs.angularjs.org/?
No 'Access-Control-Allow-Origin' header is present on the requested resource.
Origin 'http://localhost:3001' is therefore not allowed access.
Мне просто нужно настроить CORS в приложении Rails? Есть ли другой способ - может быть, какой-то трюк с файлами локальных хостов (я на Mac, FWIW) или что-то подобное? Я спрашиваю, потому что мой коллега отвечает за приложение Rails (у меня ограниченный опыт работы с Rails), но какое-то время его нет в городе; мои знания в основном ограничены стеком AngularJS, который я настроил.
Я искал и читал около часа, но пока не смог найти ничего, что можно было бы найти, что применимо к моей ситуации. Возможно, я не знаю лучших условий поиска.
Спасибо за любую помощь!
http://localhost:3000
- person New Dev   schedule 28.12.2014