【问题标题】:How to allow iOS app to search Rails JSON API?如何允许 iOS 应用搜索 Rails JSON API?
【发布时间】:2016-01-05 01:10:02
【问题描述】:

我有一个 Rails API,用作 Swift iOS 应用程序的后端。我想允许 Swift 应用程序的用户搜索作者和书籍,并且我有“所有书籍”和“所有作者”的 API 端点。

我是否需要在 API 端点中编写逻辑以进行搜索,或者是否有标准语法,例如 /api/authors?utf8=✓&q%5Btitle_contains%5D=magic

我在 Web 应用程序中安装了 Redis/soulmate 以进行搜索,但不确定如何将其扩展到 API 端点。

感谢您的任何提示!

【问题讨论】:

    标签: ios ruby-on-rails json api


    【解决方案1】:

    没有。Rails 没有内置任何搜索实用程序。这是因为根据要求有很多可能的方法来实现它。

    可以使用参数和范围来完成简单的过滤:

    def index
      @dogs = Dog.all
      @dogs = Dog.where(status: params[:status].to_sym) if params[:status]
    end
    

    There are gems 使用 Lucene、Solr、Elasticsearch 等提供全文搜索。

    【讨论】:

    • 好的 - 以这个例子为例 - 路线是什么,例如:localhost:3000/api/books?title=text
    • 在这种情况下,它将类似于localhost:3000/api/dogs?status=available。但这实际上取决于您如何实现路由。您可能想了解参数在 Rails 中的工作原理guides.rubyonrails.org/…
    • 对不起,我想我误解了您的评论,但这完全取决于您选择如何实施它。您是 API 的作者,Rails 没有关于如何实现搜索甚至搜索需要什么的具体选项。查看您认为设计良好的 api 并模拟路线,然后查看您需要的规模,然后从那里研究可能的实施解决方案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-26
    • 1970-01-01
    • 1970-01-01
    • 2014-02-08
    • 2019-08-10
    相关资源
    最近更新 更多