gpt4 book ai didi

ruby-on-rails - 在哪些情况下您需要在设计上实现这些复杂的 token 身份验证(Rails 3.2)

转载 作者:太空宇宙 更新时间:2023-11-03 18:21:55 25 4
gpt4 key购买 nike

我正在 Heroku 上构建 Rails 应用。

我安装了设备来管理我想添加“可验证 token ”的用户身份验证。

我基本都是用this tutorial效果很好

但是,我遇到了更复杂的关于 token 可验证的教程,比如这两个:

我不明白为什么它们比我实现的要复杂得多?他们似乎提到了“移动”的东西,那么这是否意味着它是使用“ token 可验证”的更复杂的方式,因为它允许在更多使用情况下(例如在移动设备上)进行身份验证?

真的在黑暗中所以我感谢任何帮助。

最佳答案

在大多数情况下,( native )移动应用程序中的身份验证与通过浏览器进行身份验证的方式几乎相同:用户提供他的凭据,这些凭据通过网络发送到服务器/应用程序,然后应用程序响应通过为用户提供代表经过身份验证的 session 的“ token ”。

主要区别:基于浏览器的客户端通常会使用 application/x-www-form-urlencoded 使用 HTML 表单的 HTTP POST 提交所述凭据。返回的 token 通常以 session cookie 的形式提供,浏览器会在每个后续 HTTP 请求中显示该 token 。

另一方面, native 移动客户端虽然作为浏览器运行,但并不受限于 HTML 的处理方式,而且它们中的大多数不使用 cookie。

典型的移动客户端使用 Web 服务 API。大多数 API 都被设计成尽可能无状态(与基于浏览器/cookie 的 session 不同)。

大多数 Web 服务 API 还需要/希望能够使用尽可能少的带宽发送和接收尽可能多的分层、复杂数据。因此,他们更喜欢结构化数据的更紧凑表示,例如 JSON (或者在某些情况下,BSON)。

同样,在大多数情况下,不希望将身份验证 token 作为 URL 查询参数显示(或者,如果您通过 JSON 有效负载发送,您也可以在其中包含 token )。

由于这个原因,现有的 Devise session Controller 和 token 身份验证机制是不​​充分的,因此有许多示例说明如何提供替代的、REST 式或基于 JSON 的身份验证来扩展 Devise。

关于ruby-on-rails - 在哪些情况下您需要在设计上实现这些复杂的 token 身份验证(Rails 3.2),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16867444/

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