我正在使用这个项目http://codepen.io/juanv911/pen/gbgjLe从 YouTube、Facebook、Twitter 和其他网站提取关注者/喜欢/订阅者数据,问题是我遇到了两个问题:
第一个问题:YouTube channel ID/用户 ID 不工作,因为它是字母数字?
如果我尝试这个随机的 youtube 用户:
var youtube = 'envato';
有用。
但是,如果我尝试这样做,它不会:
var youtube = 'iz2KM8dASHDBAISDGB'; // FAKE User ID
或者这个:
var youtube = 'UCiz2KM8dDBN2OlERERWA'; // FAKE Channel ID
顺便说一句,那些ID是假的,我这样写只是为了演示代码,除了
envato
,这是一个真正的 youtube 用户帐户。我的 channel 是全新的,所以要创建自定义用户 ID,我必须满足一些要求。
第二个问题:YouTube API 浏览器 key 不起作用
如果我在 Code Pen 的项目中使用这个 API 浏览器 key ,它可以工作:
key:'AIzaSyDXpwzqSs41Kp9IZj49efV3CSrVxUDAwS0'
但是,如果我使用我之前创建的自己的 key ,它不会。
这是我的代码:
*YouTube API V3*/
var youtube = 'envato';
//YouTube API V3
$.ajax({
url: 'https://www.googleapis.com/youtube/v3/channels?part=statistics&forUsername='+youtube,
dataType: 'jsonp',
type: 'GET',
data:{
key:'AIzaSyDXpwzqSs41Kp9IZj49efV3CSrVxUDAwS0'
},
success: function(data) {
var subscribers = parseInt(data.items[0].statistics.subscriberCount);
var k = kFormatter(subscribers);
$('#posts .youtube .count').append(k);
getTotal(subscribers);
}
});
最佳答案
如果要使用 channel ID,则需要将代码中的“forUsername”更改为“id”。
像这样:
*YouTube API V3*/
var youtube = 'UCJr72fY4cTaNZv7WPbvjaSw';
//YouTube API V3
$.ajax({
url: 'https://www.googleapis.com/youtube/v3/channels?part=statistics&id='+youtube,
dataType: 'jsonp',
type: 'GET',
data:{
key:'AIzaSyDXpwzqSs41Kp9IZj49efV3CSrVxUDAwS0'
},
success: function(data) {
var subscribers = parseInt(data.items[0].statistics.subscriberCount);
var k = kFormatter(subscribers);
$('#posts .youtube .count').append(k);
getTotal(subscribers);
}
});
关于ajax - 使用 YouTube API 时的两个问题 : Browser Key not working and username/channel name not working,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39265294/