Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 连接前的Facebooker(facebook会话)导致电子邮件出现http错误_Ruby On Rails_Authlogic_Facebooker - Fatal编程技术网

Ruby on rails 连接前的Facebooker(facebook会话)导致电子邮件出现http错误

Ruby on rails 连接前的Facebooker(facebook会话)导致电子邮件出现http错误,ruby-on-rails,authlogic,facebooker,Ruby On Rails,Authlogic,Facebooker,我正在使用facebooker authlogic插件。我现在工作得很好。但是,在User.before\u connectfacebook\u会话中设置电子邮件地址的任何尝试都会导致Apache抛出以下错误: 脚本标题过早结束:person_会话,引用者: person_会话是我的用户_会话 以下是连接前的代码: 连接Facebook会话前的def self.name=facebook\u session.user.name self.login=facebook\u session.user

我正在使用facebooker authlogic插件。我现在工作得很好。但是,在User.before\u connectfacebook\u会话中设置电子邮件地址的任何尝试都会导致Apache抛出以下错误:

脚本标题过早结束:person_会话,引用者:

person_会话是我的用户_会话

以下是连接前的代码:

连接Facebook会话前的def self.name=facebook\u session.user.name self.login=facebook\u session.user.first\u name self.points=Person.default\u点

 Rails.logger.debug("*********email: "+facebook_session.user.email)
 self.email=facebook_session.user.email
结束

请注意,错误发生前记录的电子邮件地址是有效的

我的猜测是,添加“@”会导致它失败。另一种可能性是,它试图对导致http错误的电子邮件地址进行验证

任何想法都将不胜感激


谢谢。

显然,您也可以在应用程序中从facebook_会话中获取电子邮件。但是你必须在你的应用程序控制器中放入以下内容才能访问facebook会话这不是显而易见的,只是从另一个人的晦涩帖子中发现的:

过滤前:设置facebook会话
helper_方法:facebook_会话

作为一种解决方法,我在我的用户模型中创建了一个名为temp_email的字段。我在连接之前设置它,然后在我的person会话控制器中永久设置它。这意味着我猜这与验证有关。但如果能有一个真正的解决方案还是很好的。