2015-08-06 5 views
3

Я довольно новичок в кодировании и сейчас изучаю Devise/Omniauth. Я работаю на учебник, чтобы получить пользователь соединиться с Facebook через OmniAuth в качестве примера, но получить следующую ошибку в консоли:Настройка CORS - «Access-Control-Allow-Origin» с рубином

XMLHttpRequest cannot load https://www.facebook.com/dialog/oauth?client_id=... No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:3000' is therefore not allowed access. 

Я понимаю, что по соображениям безопасности, некоторые браузеры не позволяют запрос CORS , Я нашел много связанных темы на StackOverflow (link1, link2, link3, link4, link5), и что самое главное, чтобы

Access-Control-Allow-Origin: * 

Я попробовал и не мог заставить его работать. Поскольку я использую ruby, я также узнал, что есть драгоценный камень (Rack-Cors), чтобы разрешить запросы CORS с рубином и подумал: «Круто, я спасен», но я не мог заставить его работать.

Исчерпывание вариант и потому я бегу Chrome, я также попытался открыть хром этак

open /Applications/Google\ Chrome.app --args --disable-web-security 

Это не сработало. Я пробовал разные вещи за прошедшие дни и не могу получить доступ к учетному записям Omniauth Facebook (PS: я разрешил доступ к http://localhost:3000/ на странице настроек разработчиков Facebook моего приложения)

Пожалуйста, приложите ссылку на мой репозиторий на Github : repository

Что я делаю неправильно? Есть ли какой-то конкретный способ настройки CORS, который мне не хватает? Если кто-то может помочь или знать, как заставить его работать с рубином/хромом, было бы весьма полезно. Благодарю.

ответ

0

Вы можете использовать стойку-Корс камень, чтобы решить проблему

Мы уже говорили, прежде подобных проблем here