我有一个应该返回布尔值的函数。在函数内部,我正在检查用户是否被 cookie。如果用户没有被 cookie 比我想运行检查,看看他们是否是一个机器人。我有一个名为@bots 的数组,其中包含“googlebot”和“msnbot”等字符串。@bots 数组是使用 before_filter 创建的并且可用。
我想要做的是允许机器人访问,即使它们没有被 cookie。由于某种原因,这不起作用,因为我也需要它。我对 RoR 相当陌生,我很感激可以提供的任何和所有帮助。提前致谢。
我正在使用 chrome 进行测试,所以我在 bots 数组中添加了“Chrome”并删除了我的 cookie,但该函数仍然返回 false。我确信我忽略了一些东西。
def verified?
if cookies[:verified].nil?
@bots.each do |bot|
if request.env['HTTP_USER_AGENT'].include? bot
true
break
else
false
end
end
else
true
end
end