2015-01-06 3 views
0

Извините за новичок вопрос. У меня есть базовый JS под моим поясом, и у меня был успех, создав несколько небольших проектов с API-интерфейсом Embed, но я повесил трубку на то, что кажется маленькой. Надеюсь, один из вас, гораздо умнее, сможет помочь мне.Google Analtyics Вставить API - report.Data Issue

Я постараюсь сделать это как можно короче.

Я создаю страницу, которая на данный момент я намерена просто отображать число - вчерашние просмотры страниц, чтобы быть точным. Как я уже сказал, я сделал несколько небольших проектов с API-интерфейсом Embed, и они все прошли спокойно. Тем не менее, все мои проекты на сегодняшний день включают графики и, следовательно, компонент DataChart. Теперь у меня возникают проблемы с тем, что компонент Data работает так, как я хочу.

Я начал с примера внедрения Embed API Basic Dashboard (https://ga-dev-tools.appspot.com/embed-api/basic-dashboard/) и внедрил его без проблем. Из этого примера я надеялся взломать свой путь к заявленной цели - просто отобразить вчерашние просмотры страниц на странице - только я не могу понять, как это сделать.

Я понимаю, как использовать основы API, что на 100% объясняется хорошо написанной документацией на ga-dev-tools-appsopt.com и developers.google.com/analytics/devguides/reporting/embed/v1 /. Я думаю, что моя проблема в большей степени связана с отсутствием навыков JS. Я слышал, что мне может понадобиться использовать JS Promises для выполнения этой работы, но я все еще обнимаю эту концепцию.

Sans API встраивания загрузки сценария, вот что у меня есть:

gapi.analytics.ready(function() { 

    gapi.analytics.auth.authorize({ 
    container: 'embed-api-auth-container', 
    clientid: 'MY CLIENT ID IS HERE', 
    }); 

    var viewSelector = new gapi.analytics.ViewSelector({ 
    container: 'view-selector-container' 
    }); 

    viewSelector.execute(); 

    var data = new gapi.analytics.report.Data({ 
    query: { 
     metrics: 'ga:pageviews', 
     'start-date': 'yesterday', 
     'end-date': 'yesterday' 
    } 
    }); 

    viewSelector.on('change', function(ids) { 
    data.set({query: {ids: ids}}).execute(); 
    }); 

}); 

Я знаю, что мой код все неправильно - я просто не уверен, что знаю, куда идти отсюда. Я представил себе, как просто заменить существующий текст на странице, используя innerHTML.replace, когда у меня есть данные в переменной.

Если перейти от примера диаграммы от базовой панели мониторинга к тому, что я прошу, это нечто большее, чем простое JS, которое вы можете предоставить мне в ответ, я согласен с каким-то общим советом. Я не хочу, чтобы кто-то делал мою работу для меня, если мы говорим о тонне кода. Я просто застрял и не совсем уверен, куда идти дальше.

Спасибо заранее!

ответ

0

Я считаю, что если вы поставите метрики в пределах 'знаков, вы должны быть все готово :)

Попробуйте это и дайте мне знать, если он работал:

var data = new gapi.analytics.report.Data({ 
    query: { 
     'metrics': 'ga:pageviews', 
     'start-date': 'yesterday', 
     'end-date': 'yesterday' 
    } 
    }); 
Смежные вопросы