【问题标题】:API Access with Devise Authentication - Best Practices?使用设计身份验证的 API 访问 - 最佳实践?
【发布时间】:2012-02-19 21:12:30
【问题描述】:

我在 Rails 应用程序中使用 Devise 并希望通过 API 公开一些模型数据,但应该像应用程序一样限制对 API 的访问。

$ curl http://myapp.com/api/v1/sales/7.json
{"error":"You need to sign in or sign up before continuing."}

显然。

在这种情况下访问 API 是否有最佳做法?我宁愿一步完成验证+获取数据,但这只是为了让客户的工作更轻松。他们将使用 JQuery 拉入数据客户端。

感谢您提供任何信息!

  • 凡妮莎

【问题讨论】:

    标签: ruby-on-rails ruby web-services devise


    【解决方案1】:

    我建议您按照以下帖子中的选项 2:使用 API 密钥部分在 Rails 中实现 API 身份验证。

    它是轻量级的,只需要在每个请求中传递一个api_key 参数。

    【讨论】:

      【解决方案2】:

      我的建议是生成一个 API“密钥”(哈希值)并通过 json 请求传递。这样您就可以验证和跟踪 API 的使用。许多 API 使用“密钥”来跟踪和验证使用。例如,谷歌地图,他们只使用一个 API 密钥。其中 PayPal 使用用户名、密码和密钥。有很多方法可以做到这一点。

      我会尝试创建一个属于用户的一对多表,仅用于键。这样,用户可以为不同的目的生成多个哈希键。 (一个用于报告,一个用于备份,一个用于自动从 Powerpoint 中提取的精美饼图)。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-08-26
        • 2014-01-23
        • 2013-01-17
        • 2014-06-23
        • 1970-01-01
        • 2017-06-26
        • 1970-01-01
        • 2020-11-12
        相关资源
        最近更新 更多