簡體   English   中英

如何從 Node.js 中的 Google Analytics 獲取數據

[英]How to get data from Google Analytics in Node.js

我想閱讀我網站的 Google Analytics 數據並在管理面板中呈現。

這是我的代碼:

const google = require('googleapis')
const scopes = 'https://www.googleapis.com/auth/analytics.readonly'
const jwt = new google.auth.JWT(process.env.GOOGLE_CLIENT_EMAIL, null, process.env.PRIVATE_KEY, scopes)
const view_id = '196847632'

async function getData() {
    const response = await jwt.authorize()
    const result = await google.analytics('v3').data.ga.get({
      'auth': jwt,
      'ids': 'ga:' + view_id,
      'start-date': '30daysAgo',
      'end-date': 'today',
      'metrics': 'ga:pageviews'
    })
}

但我收到了這個錯誤:

const jwt = new google.auth.JWT(process.env.GOOGLE_CLIENT_EMAIL, null, process.env.PRIVATE_KEY, scopes)
TypeError: Cannot read property 'JWT' of undefined

如何解決這個問題並將分析數據渲染到 ejs 文件。

看起來您的 Proccess.env 有問題,因此請確保您獲得了正確的值。

如果你的私鑰是這樣的:

-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkQ\nPmG+bRj7TkHwXJf2cx99CKW3usWKgn7EqFdFHOOQ1Z01+48SxHgTCJcd5sKy8Cf1iElXOXhIyTgnRiYm5FT1p2lMv8c71G\ngwB0kSFp5fu7vB7cGJXDMKU=\n-----END PRIVATE KEY-----\n

然后嘗試像這樣訪問它:

const jwt = new google.auth.JWT( process.env.CLIENT_EMAIL, null, process.env.PRIVATE_KEY.replace(/\\n/g, "\n"), scopes );

資源: 如何在 Nodejs 中使用 Google Analytics 報告 API

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM