javascript - 使用 jQuery 将参数动态传递到 YouTube API

标签 javascript jquery html youtube youtube-api

我正在发出如下 YouTube API 请求:

$.get("https://www.googleapis.com/youtube/v3/channels", {
    part: "contentDetails",
    id: "somestring",
    key: "MY-API-KEY"
} /*, ...*/ )

我有一个值为 id 的隐藏字段。用户可以选择是否要使用idforUsername

如果我使用下面的 jQuery 代码,我会收到错误:

unexpected string

API 参数缺失,但在本例中值为 id

$.get("https://www.googleapis.com/youtube/v3/channels", {
    part: "contentDetails",
    $("#subtype").val(): $("#url").val(),
    key: "MY-API-KEY"
}, /*, ...*/ )

如何使用 jQuery 代码?

最佳答案

您可以使用新的 ES6 对象初始值设定项语法来实现此目的:

$.get("https://www.googleapis.com/youtube/v3/channels", {
    part: "contentDetails",
    [$("#subtype").val()]: $("#url").val(),
    key: "MY-API-KEY"
})

请注意计算属性名称周围的方括号。如果您想支持不支持 ES6 的浏览器,请使用更简单的方法:

var params = {
    part: "contentDetails",
    key: "MY-API-KEY"
};
params[$("#subtype").val()] = $("#url").val();
$.get("https://www.googleapis.com/youtube/v3/channels", params);

关于javascript - 使用 jQuery 将参数动态传递到 YouTube API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49445830/

相关文章:

javascript - ECMAScript 2015 按顺序调用 Promise

javascript - 为什么我的代码在innerHtml 上返回 "undefined"?

html - CSS 子选择器 (>) 不适用于 IE

javascript - 我们如何处理共享域中的其他 Web 应用程序不正确地将 cookie 范围限定到父域的情况?

javascript - 打印文件中的数组数组

javascript - 有没有一种方法可以防止在 jQuery 对象化 HTML 片段中加载图像

javascript - 无法将文本值分配给事件处理程序中 JQuery 元素的变量

Javascript 书签删除导航栏?

javascript - 构建 Chrome 搜索栏副本

javascript - 捕获字符串中出现的正则表达式组