新手问题 如何分析 github Oauth 返回的 hash 的结构

xiaoronglv · 2012年08月14日 · 最后由 dfang 回复于 2012年08月14日 · 2544 次阅读

hello,everyone

我正在使用 omniauth 来实现 oauth,github 返还的用户信息为 hash,如何理清 hash 的结构?

看官方文档,还是使用某些工具?


 Parameters: {"code"=>"7732382e3c531d61083c", "state"=>"aa8e0509970e29f8c1501ef54c3bdc586b94440bcd231f79", "provider"=>"github"}
github #<OmniAuth::AuthHash credentials=#<Hashie::Mash expires=false token="7d23bc077a961cb29534bd01a55f19a28a3cf5f7"> extra=#<Hashie::Mash raw_info=#<Hashie::Mash avatar_url="https://secure.gravatar.com/avatar/28936031e91c554c5255d939bd80350a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png" bio="Product Manager" blog="www.mednoter.com" company="Dxy.cn" created_at="2011-11-28T01:02:05Z" email="[email protected]" followers=5 following=7 gravatar_id="28936031e91c554c5255d939bd80350a" hireable=false html_url="https://github.com/xiaoronglv" id=1224077 location="Hangzhou" login="xiaoronglv" name="Xiaorong Lv" public_gists=2 public_repos=17 type="User" url="https://api.github.com/users/xiaoronglv">> info=#<OmniAuth::AuthHash::InfoHash email="[email protected]" image="https://secure.gravatar.com/avatar/28936031e91c554c5255d939bd80350a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png" name="Xiaorong Lv" nickname="xiaoronglv" urls=#<Hashie::Mash Blog="www.mednoter.com" GitHub="https://github.com/xiaoronglv">> provider="github" uid=1224077>
Completed 500 Internal Server Error in 6ms`

这些东西都存在一个env['omniauth.auth']里面了,你可以自己写函数读取或者存入数据库,看这里,希望可以帮到你,我是今天刚刚搞了一部分这个东西

用 pry 设置个断点,request.env['omniauth.auth'] 取,console 下看的一清二楚

需要 登录 后方可回复, 如果你还没有账号请 注册新账号