1

我允许用户使用 keyup javascript 函数通过 ajax 请求搜索他们的 facebook 朋友。

ajax 请求调用一个 php 操作,该操作使用 fql 搜索用户的朋友并输出 10 个朋友。这个 ajax 请求平均需要 5 秒,所以对于打字来说不够快,有什么方法可以让我的代码更快或更高效?

$params = array("method"=> "fql.query", "query"=> "SELECT uid, name, pic FROM user WHERE strpos(lower(first_name), '$data') >= 0 AND uid IN (SELECT uid2 FROM friend WHERE uid1 = me()) ORDER BY first_name LIMIT 10 ", "callback"=> "");

$friends  =  $facebook->api($params);
$this->view->friends = $friends;

其中 $data 包含要搜索的名称。然后我在我的视图中以 html 格式输出它。有任何想法吗?

4

1 回答 1

0

每次用户添加角色时都发出新请求并不是一个好主意。您应该使用页面本身一次加载所有朋友。或者更好的是,您可以在页面完全加载后使用 AJAX 透明地执行此操作。

然后,您将避免任何缓慢的请求,因为您已经获得了用户的朋友。结果立竿见影。为此,我建议您使用jQuery Autocomplete 插件

于 2013-01-04T19:55:15.533 回答