我正在尝试从html表单中获取输入,并为内容所有者显示youtube分析。 我修改了以下示例:
https://developers.google.com/youtube/analytics/v1/sample-application
我正在使用以下范围
var OAUTH2_SCOPES = [
'https://www.googleapis.com/auth/yt-analytics.readonly',
'https://www.googleapis.com/auth/yt-analytics-monetary.readonly',
'https://www.googleapis.com/auth/youtube.readonly',
'https://www.googleapis.com/auth/youtubepartner'
];
getUserMetrics()函数从我的html表单执行:
<div class="form">
Earnings and Ad Performance Metrics
<form name="metrics" action="form.asp">
CMS Name: <input type="text" name="ownerName"/><br />
Start date: <input type="date" name="startDate"/>
End date: <input type="date" name="endDate"/>
<input type="button" value="Submit" onclick="getUserMetrics(ownerName,startDate,endDate)"/>
</form>
function getUserMetrics(ownerName,startDate,endDate){
var owner = ownerName.value;
var start = startDate.value;
var end = endDate.value;
var request = gapi.client.youtubeAnalytics.reports.query({
'start-date': start,
'end-date': end,
ids: 'contentOwner=='+owner,
metrics : 'views,earnings,grossRevenue,playbackBasedCpm,monetizedPlaybacks,impressions,impressionBasedCpm',
filter: 'claimedStatus==claimed'
});
request.execute(function(response){
if("error" in response){
console.log(response);
}
else{
console.log("success");
}
});
这在API Explorer中运行良好: https://developers.google.com/apis-explorer/#p/youtubeAnalytics/v1/youtubeAnalytics.reports.query
具有相同的指标,过滤器等。但是当从我的表单运行它时我得到错误:不支持查询.. 我最终想在html页面上显示结果,但似乎无法通过此错误。
答案 0 :(得分:0)
我得到了一些帮助,并意识到我正在执行POST命令来获取此信息,而API Explorer正在进行GET。我删除了整个请求函数并执行了$.getJSON(url)
函数,这解决了我的问题,代码更少。