我正在尝试从this question调整一个简单的搜索脚本。但是,我正在尝试确定方法loadApi
未定义的原因。我也无法追查问题的根源,因为Google提供的JS是...... 难以阅读。
这是脚本,再次:
<script>
googleApiClientReady=function() {
loadApi() = function() {
return new Promise(function(resolve,reject){
gapi.client.setApiKey('<redacted>');
gapi.client.load('youtube', 'v3', resolve);
});
};
loadApi().then(function() {
var q = 'pink floyd';
var request = gapi.client.youtube.channels.list({
part: 'statistics',
forUsername : 'GameSprout'
});
request.execute(function(response) {
var str = JSON.stringify(response.result);
alert(str);
});
});
};
</script>
以下是有问题的错误:
答案 0 :(得分:1)
可能不需要身份验证来执行搜索,但您的应用程序仍需要重新注册,您至少需要使用API密钥。
请注意我是一个不一个JS dev我只是从documentation复制了这个例子。有几个显示如何访问public apis。
gapi.client.init({
'apiKey': 'YOUR_API_KEY',
...
}).then(...)
注意:就我所见,channels.list是公共部分私有方法的一部分。某些参数仅在您通过身份验证后才有效。
我的布尔值 此参数只能在经过适当授权的请求中使用。将此参数的值设置为true可指示API仅返回经过身份验证的用户拥有的通道。