gpt4 book ai didi

javascript - 我的搜索栏与 YouTube API 不同步?

转载 作者:行者123 更新时间:2023-12-02 18:06:00 25 4
gpt4 key购买 nike

YouTube API 需要很短的时间才能返回对其服务器的请求(在我的例子中,我正在发送搜索查询)。但是,它仍然太慢,无法使我的程序同步。

这是搜索栏处理程序:

 Template.search_bar.events({
'keypress #query' : function (evt,template) {
// template data, if any, is available in 'this'
if (evt.which === 13){
var url = template.find('#query').value;
$("#query").val('');
//YoutubeAPI calls go here
Template.list.search_get(url);

Links.insert({sess:Template.list.my_playlist_id,youtube_link:Session.get("search_results").items[0].snippet.title});
}
}
});

这就是执行 GET 调用的方法:

Template.list.search_get= function(str){
var request = gapi.client.youtube.search.list({part:'snippet',q:str});

request.execute(function(response) {
str = JSON.stringify(response.result);
str = JSON.parse(str);
Session.set("search_results",str);
});
}

顶部搜索结果显示在列表中,但结果始终显示在一个结果后面。这意味着第一次搜索将产生 undefined,因为此时 Session 变量尚未更新,第二次搜索将产生第一次搜索的结果,依此类推。

任何关于我如何解决这个问题的意见都会很好。

最佳答案

您不需要为此使用Session。尝试将 Links.insert 例程移至您的请求回调中,事情应该开始看起来更好;)

关于javascript - 我的搜索栏与 YouTube API 不同步?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20103848/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com