ios - 逐字搜索 API

标签 ios swift swift3 objective-c-blocks

我的文本字段有 .editedChanged 事件。 当用户输入“Boy”时,它将发送: “B”发送到API进行搜索并等待响应。
“Bo”发送到API进行搜索并等待响应。 “男孩”发送到API进行搜索并等待响应。 问题是,它会向服务器请求 3 次,并从服务器获得 3 次响应。

****我怎样才能只发送1次“男孩”到API进行搜索并等待响应?

最佳答案

实现此目的的有效方法是监视用户输入之间的延迟时间,并且仅在用户停止输入 x 时间后才向服务器请求。

例如,用户输入“B”并等待 0.05 秒,然后输入“o”并等待 0.08 秒,然后输入“y”并停止输入。

如果您的代码仅在字符输入间隔至少 0.5 秒后才提交到服务器,则在输入“Boy”后,它只会向服务器请求一次。

关于ios - 逐字搜索 API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42104323/

相关文章:

ios - dispatch_async 和异步请求的问题

ios - 为什么 Microsoft Azure(或一般的 Swift)无法更新变量以在表查询后返回?

objective-c - @interface : "expected identifier or {" and "Parse issue: Missing @end" 处的 appdelegate 错误

ios - 如何在应用程序进入后台时发送本地通知

Swift 如何模仿 navigationController ,没有导航栏

ios - 动态单元格高度问题

ios 应用程序被拒绝,需要帮助确定问题

ios - 如何在 View 出现时自动显示键盘

ios - 当我尝试构建我的项目时出现以下错误

ios - 如何使用 SpriteKit 检测节点是否离开屏幕