Я хотел вывести статистику из Firebase на свой сайт. Для этого я связал Firebase с Google Analytics в настройках в разделе Вкладка "Интеграции".
Оттуда я скопировал Идентификатор свойства
Включил Google Analytics Data API в моем проекте
Затем я заменил Идентификатор свойства своим собственным в этот скрипт и запустил скрипт.
Но я получил ошибку:
Unable to detect a Project Id in the current environment. To learn more about authentication and Google APIs, visit:https://cloud.google.com/docs/authentication/getting-started
@DaImTo Интересно. Можете дать ссылку на мануал или документацию?
@DaImTo и, если честно, хотелось бы увидеть окончательный результат с помощью node js😅
Нет, но я могу дать вам ссылку на запрос о проблеме, который я только что разместил на странице GitHub для библиотеки, которую вы используете, сказав им, что они должны задокументировать ее #187, в проблеме есть ссылка на то, где это задокументировано 😉
Кстати, вы всегда должны включать минимальный воспроизводимый пример в свой вопрос, а не ссылаться на него на внешнем сайте. Если это когда-либо изменится, ваш вопрос станет недействительным.
@DaImTo Спасибо! Извините за наглость, просто сроки поджимали к диплому, и я застрял на этом моменте. А я плохо знаю английский. Спасибо еще раз.
Я подозреваю, что проблема в том, что вы не настроили GOOGLE_APPLICATION_CREDENTIALS
Вы должны следовать Быстрый запуск API, в нем показано, как настроить учетные данные, необходимые для авторизации этого кода.
После того, как ваша авторизация настроена, вы сможете получить к ней доступ. Помните, что сервисной учетной записи должен быть предоставлен доступ к вашей учетной записи Google Analytics, иначе она не сможет получить доступ к свойству.
/**
* TODO(developer): Uncomment this variable and replace with your
* Google Analytics 4 property ID before running the sample.
*/
// propertyId = 'YOUR-GA4-PROPERTY-ID';
// Imports the Google Analytics Data API client library.
const {BetaAnalyticsDataClient} = require('@google-analytics/data');
// Using a default constructor instructs the client to use the credentials
// specified in GOOGLE_APPLICATION_CREDENTIALS environment variable.
const analyticsDataClient = new BetaAnalyticsDataClient();
// Runs a simple report.
async function runReport() {
const [response] = await analyticsDataClient.runReport({
property: `properties/${propertyId}`,
dateRanges: [
{
startDate: '2020-03-31',
endDate: 'today',
},
],
dimensions: [
{
name: 'city',
},
],
metrics: [
{
name: 'activeUsers',
},
],
});
console.log('Report result:');
response.rows.forEach(row => {
console.log(row.dimensionValues[0], row.metricValues[0]);
});
}
runReport();
вы забыли настроить GOOGLE_APPLICATION_CREDENTIALS