gpt4 book ai didi

jquery - 如何使用 Devise 和 activerecord-reputation-system 获取 current_user 进行 Ajax 投票

转载 作者:行者123 更新时间:2023-12-01 07:20:30 25 4
gpt4 key购买 nike

我希望能够允许用户使用 AJAX 对资源进行投票,但是,我不太确定如何在我的资源 Controller 中获取 current_user 的 id。

我四处搜索,阅读了很多建议,将 user_id 保存为隐藏字段,然后使用它发送 AJAX 请求,但这不会让我面临安全漏洞吗?任何恶意用户都可以更改 user_id,然后作为他选择的随机用户进行投票。

获取 AJAX 请求的 current_user id 的标准方法是什么?

谢谢

最佳答案

如果整个事情都在身份验证的后面,那么您不需要将 user_id 存储在 View 中,或花费任何精力来传递它。像平常一样,只需在 Controller 中访问 current_user (或 current_user.id)即可。

“整个事情都在身份验证后面”,我的意思是具有投票接口(interface)的 View 的 Controller ,以及 AJAX 请求的目标的 Controller 都应该有 before_filter :authenticate_user!,或从具有此功能的类派生。如果是这种情况,devise 将以与其他所有经过身份验证的请求相同的方式识别用户。请求是否为 JSON 并不重要,但您可能需要调整未经授权的行为以将 JavaScript 重定向包含到您的登录信息(如果您还没有类似的内容)。

关于jquery - 如何使用 Devise 和 activerecord-reputation-system 获取 current_user 进行 Ajax 投票,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14301610/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com