等待请求在JQuery中发送另一个

时间:2017-07-10 15:00:33

标签: javascript jquery ajax spotify

我使用spotify WEB API,我的想法是在点击下一首歌曲按钮时用歌曲名称更新html。

问题在于,当我点击按钮时,它确实更新了歌曲,但更新了最后一首歌曲,而不是当前播放的歌曲。

我尝试过使用其他方式,例如"成功"和#34;完成"参数,但使用"完成"它不会更新和成功"同样会发生。

无论如何我可以设置等待"下一次请求的时间到了什么时候?

document.getElementById('skip-song').addEventListener('click', function(){
  $.ajax({
    type: 'POST',
    url:'https://api.spotify.com/v1/me/player/next',
    headers: {'Authorization': "Bearer " + access_token},
    }).done(function(data){
      $.ajax({
        url: 'https://api.spotify.com/v1/me/player/currently-playing',
        headers: {
          'Authorization': 'Bearer ' + access_token
        },
      }).done(function(response){
            currentPlayingPlaceholder.innerHTML = currentPlayingTemplate(response);
    });
  });
}, false);

1 个答案:

答案 0 :(得分:1)

通过引入超时,您可以在请求当前播放的歌曲之前等待几秒钟。我不知道你应该等多久,感觉有点persist()。如果跳过的函数当前正在播放,那本来不错......

hacky