Мы пытаемся использовать связанный-омняут-камень в приложении Rails, который находится за прокси-сервером http.
Я пробовал все, что мог найти, чтобы заставить omniauth использовать прокси-сервер, но я не могу заставить его работать.
следующее сообщение предлагает использовать:
provider :linkedin, 'xxx', 'xxx', {
:client_options => {
:proxy => ENV["HTTP_PROXY"] || ENV["http_proxy"]
}
}
Что не работает для меня, и я не вижу упоминания прокси-сервера в источнике. Я также пытался жестко кодировать прокси. Нет успеха.
Этот пост SO тоже не работает для меня.
Я также создал инициализатор для net:: http с прокси. Это тоже не работает. Я экспортировал прокси в моей оболочке и bashrc. И в /etc/environment. Ничего не работает.
Как я могу заставить omniauth использовать исходящий прокси?
--- UPDATE ---
Хотя принятый ответ ниже действительно работает для Linkedin Oauth, большинство драгоценных камней теперь полагаются на Oauth2. Это устраняет Net:: HTTP и вводит Faraday, который имеет отдельный набор правил для настроек прокси-соединения:
https://github.com/simonmorley/oauth2/blob/master/lib/oauth2/client.rb#L36
Чтобы получить прокси-сервер, работающий с более поздними драгоценными камнями (в том числе популярный Facebook, Google, Github, проверить, на какой драгоценный камень они полагаются), вы должны использовать в своем инициализаторе следующее:
provider :foursquare, 'xxx', 'xxx', {
:client_options => {
:connection_opts => {
:proxy => "http://127.0.0.1:3128"
}
}
}