我有一个问题,我不知道如何才能完成这项工作,所以我有 电子商务网站,因为每个人都可以在上面销售,所以我需要制作它 每个卖家都可以看到他的产品有多少页面浏览量。我 正在使用 Google Analytics,我已经实现了报告 他们的登陆页面和代码发布在下面。所以我需要的是 向 GA 提供 url,它应该返回每个页面的综合浏览量 在给定的时间段内。 url 数量在 30-60 之间。我从来没有 之前使用过 GA,但我无法在文档中找到解决方案,所以我 如果有人可以提供帮助,我会很高兴。我已经尝试过一些方法但是我 收到超出最大配额的错误。
我正在使用 next.js 应用程序路由器
import { BetaAnalyticsDataClient } from '@google-analytics/data'
const credential = JSON.parse(
Buffer.from("", 'base64').toString()
)
export const analyticsDataClient = new BetaAnalyticsDataClient({
projectId: credential.project_id,
credentials: {
client_email: credential.client_email,
private_key: credential.private_key,
},
});
async function queryAnalytics(shopUrl: string, startDate: string, endDate: string) {
const request = {
property: `properties/{propertyId}`,
dateRanges: [{ startDate, endDate }],
dimensions: [{ name: 'pagePath' }],
metrics: [{ name: 'activeUsers' }],
dimensionFilter: {
filter: {
fieldName: 'pagePath',
stringFilter: { value: shopUrl },
},
},
};
const [response] = await analyticsDataClient.runReport(request);
const viewers = response.rows?.[0]?.metricValues?.[0]?.value || 0;
return Number(viewers);
}
我尝试获取超过 10 个,但出现配额超出错误
为了避免在获取多个 URL 的页面浏览量时超出 Google Analytics 配额
批量请求:如果可行,使用 or 条件将 URL 合并到单个请求中。
限制并发:控制同时请求的数量,防止配额超额。
实现缓存:临时存储结果,减少API调用频率。
减少时间范围:查询更短的时间段。
错误处理:捕获配额限制错误并实施重试策略。
我希望这会有所帮助。