現在、Sinatra アプリケーション内で OpenID プロバイダーと連携するために ruby-openid gem を使用していますが、情報フィールドを取得できません。
これはリクエストの例です:
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 などのほとんどのプロバイダでログインできますが、問題は、それらすべてから電子メール情報を取得できないことです。また、Google の openid から情報を取得できません。
それで、これを解決する方法は?私は何か間違っていますか?