Я сейчас использую гем ruby-openid для работы с провайдерами OpenID в моем приложении Sinatra, но я не могу получить информационные поля.
Это пример запроса:
openid_url = 'blahblah'
resp = openid.begin(openid_url)
resp.add_extension_arg('sreg','required','email')
resp.add_extension_arg('sreg','optional','fullname,nickname,dob,gender')
redirect_url = response.redirect_url('http://localhost:4567', 'http://localhost:4567/complete')
redirect redirect_url
Анализ результатов полей:
info = response.extension_response('sreg',true)
Я могу войти в систему с большинством провайдеров, таких как Google, Yahoo, myOpenId, ...
Но проблема: я не могу получить информацию по электронной почте от всех из них. Кроме того, я не могу получить какую-либо информацию от openid Google.
Итак, как это решить? Я делаю что-то не так?