加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – 使用OAuth从Twitter获取名字/姓氏/电子邮件

发布时间:2020-12-16 23:22:54 所属栏目:百科 来源:网络整理
导读:我只使用omniauth允许使用facebook / google / twitter登录我的网站. 我存储名字,姓氏和电子邮件.但是,当我从oauth提出twitter auth哈希时,我只会在auth哈希中获得昵称,名称,位置,图像,描述和网址. 我可以在初始化程序中传递一个范围来获取用户的电子邮件并
我只使用omniauth允许使用facebook / google / twitter登录我的网站.

我存储名字,姓氏和电子邮件.但是,当我从oauth提出twitter auth哈希时,我只会在auth哈希中获得昵称,名称,位置,图像,描述和网址.

我可以在初始化程序中传递一个范围来获取用户的电子邮件并将名称分解为first_name,last_name字段吗?

解决方法

Twitter不会发送用户电子邮件,因此您将无法从Twitter API获取该信息.相反,您必须要求用户在您的注册表单上输入他们的电子邮件地址.

至于拆分名称,一旦你使用类似的东西返回哈希,你就会这样做:

social_params ||= request.env["omniauth.auth"]
fullname = social_params["user_info"]["name"].split(' ')
first_name,last_name = fullname[0],fullname[1]
puts "first name is #{first_name} and last name is #{last_name}"

请记住,如果last_name名称中没有空格或者没有给出姓氏,则last_name可能为nil.这也没有考虑到许多人在其他文化中有多个姓氏的事实.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读