API自动完成调用(性能等)

时间:2012-01-02 23:12:32

标签: php jquery api autocomplete

我刚刚开始计划一个网络应用程序,它允许用户保存有关电影的信息。这依赖于TMDb API。现在,我想在他们搜索电影时加入自动完成功能。您是否认为在KeyUp上进行API调用是明智的?或者在keyUp之后等待一段时间?总的来说,这是实现这一目标的最佳方式吗?

我将使用PHP,jQuery并使用MySQL保存/检索用户数据

2 个答案:

答案 0 :(得分:1)

按键延迟,除非您(或您正在点击的服务器)具有能够处理它的速度。无论如何,你必须考虑竞争条件,但是有那么多的电话不会有很大的帮助。查询API的速度将比大多数用户的打字速度慢,这意味着您将使用您的API和用户的带宽对您的api进行不必要的调用。

另外,我会在你查询之前设置一个最小字符数(可能~3是好的)。这也有助于减少查询次数,并且您不会运行“a”或甚至“ap”的查询,这可能是很多事情。到达3('app')后,您可以获得更小的结果列表,这对用户更有帮助。

答案 1 :(得分:1)

您可以使用TypeWatch jQuery plugin或类似的内容,仅在用户停止键入一段时间后才调用API。例如,Stack Overflow的TagsUsers页面使用TypeWatch仅在用户停止输入500ms后处理输入。