javascript - Dailymotion api 使用 json 和 jquery 获取视频信息

标签 javascript jquery json jsonp

我需要一些帮助,因为在阅读 dailymotion api 和多个来源后无法找出问题所在。 我正在尝试通过以下方式从 dailymotion 获取特定视频 ID 的数据:

$.getJSON('https://api.dailymotion.com/video/' + encodeURIComponent(videoid) + '?fields=title,duration,user&callback=?', function(data) {

    $.each(data, function(i, item){
        console.log(item);
   });
});

但继续回应:

"Invalid parameter `_' for `GET /video/<id>'"

但问题是,当尝试在浏览器中输入相同的 URL 时,我会收到 json 响应。

我尝试使其与 .getScript 函数一起使用,但再次没有结果。

$.getScript('https://api.dailymotion.com/video/' + encodeURIComponent(videoid) + '?fields=title,duration,user&callback=dailymotion_fetch_data_callback');

然后阅读它:

function dailymotion_fetch_data_callback(data) {
 $.each(data, function(i, item){
    console.log(item);
});
}

您能帮我看看如何在将数据推送到回调函数后读取 json 响应吗?

最佳答案

使用 JSONP(带有回调的 json)时,$.getJSON 函数会将参数 ={timestamp}(因此出现无效参数“”错误)附加到您的查询以帮助通过使用不同的 URL 来防止缓存。您可以禁用此功能,但需要使用 $.ajax 语法。不幸的是,这可能会导致您的请求被浏览器缓存。您可能会通过查看在 $.ajax documentation 中找到的内容来找到另一种方法。

$.ajax({
    type: "GET",
    url:"https://api.dailymotion.com/video/" + encodeURIComponent(videoid) + "?fields=title,duration,user",
    dataType: "jsonp",
    cache: true,
    success: function(data) {
        $.each(data, function(i, item){
            console.log(item);
       });
    }
});

关于javascript - Dailymotion api 使用 json 和 jquery 获取视频信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8013876/

相关文章:

javascript - 将输入值设置为相应的标签

javascript - 如何使用 Jasmine 监视通过 ES6 默认导出导入的函数?

javascript - Jquery .val() 获取正确的值但不将其传递给变量

javascript - php服务器无法使用$.http().post请求从angularjs接收json变量

javascript - 检查后表达式发生了变化-angular

jquery - 无法使平面 ui 标签正常工作

javascript - jQuery 从字符串中选择元素

javascript - 语义 UI 搜索选择在模态负载上不会保持折叠/不集中状态

json - 将 io.ReadCloser 转换为字节数组的最有效方法

json - 如何修复失败的 VMSS 部署并出现错误 "unknown network allocation error"