我正在使用Embed API以使用服务器端身份验证显示Google Analytics数据。 我已经能够显示我需要的图形,但现在我遇到了问题, 我正在尝试显示Google Analytics使用的下表:
我能够显示相同的数据,但它们不像Analytics显示的那样可读,例如 Avg。会话持续时间应以秒表示,但我显示的是:165.28275862068966
我的问题是,有没有办法向Embed API请求正确的数据格式,还是我需要自己计算?
我调用的查询示例如下:
var dataChart5 = new gapi.analytics.googleCharts.DataChart({
query: {
'ids': 'ga:***', // My ID
'start-date': '31daysAgo',
'end-date': 'yesterday',
'metrics': 'ga:users,ga:percentNewSessions,ga:sessions,ga:bounceRate,ga:avgSessionDuration,ga:pageviews,ga:pageviewsPerSession',
'prettyPrint':'true',
},
chart: {
'container': 'chart-5-container',
'type': 'TABLE',
'options': {
'width': '100%',
'title': 'test'
}
}
});
dataChart5.execute();
答案 0 :(得分:1)
Google AnalyticsAPI以原始格式返回数据
用户会话的平均持续时间,以秒为单位。 数据类型:TIME
所以您看到的数字是165.28275862068966秒。如果你想看到它显示在网站上
00:00:00
您必须自己格式化。 API以一种格式返回其数据,在此情况下,它的总秒数。
答案 1 :(得分:0)
这是一个实际答案......
示例节点代码...
const moment = require( "moment" );
function formatTime(str) {
var dur = moment.duration(parseInt(str,10), 'seconds');
var minutes = dur.minutes();
var seconds = dur.seconds();
return minutes + " minutes and " + seconds + " seconds";
}
console.log( formatTime( "165.282" ) );