#javascript #oauth-2.0 #google-analytics #google-oauth #google-analytics-api
Вопрос:
У меня есть этот код, созданный Google, и я хочу выполнить аутентификацию на стороне сервера, но токен доступа, который я получаю на https://developers.google.com/oauthplayground/ похоже, не работает. Что я делаю не так?
Когда я использую аутентификацию на стороне клиента, это работает, но мне нужно показывать диаграммы без входа в систему. И, конечно же, я удалил маркер доступа только для публикации.
<script>
gapi.analytics.ready(function() {
// Step 3: Authorize the user.
var CLIENT_ID = 'Insert your client ID here';
gapi.analytics.auth.authorize({
serverAuth: {
access_token: ' '
}
});
// Step 4: Create the view selector.
var viewSelector = new gapi.analytics.ViewSelector({
container: 'view-selector'
});
// Step 5: Create the timeline chart.
var timeline = new gapi.analytics.googleCharts.DataChart({
reportType: 'ga',
query: {
'dimensions': 'ga:date',
'metrics': 'ga:sessions',
'start-date': '30daysAgo',
'end-date': 'yesterday',
},
chart: {
type: 'LINE',
container: 'timeline'
}
});
// Step 6: Hook up the components to work together.
gapi.analytics.auth.on('success', function(response) {
viewSelector.execute();
});
viewSelector.on('change', function(ids) {
var newIds = {
query: {
ids: ids
}
}
timeline.set(newIds).execute();
});
});
</script>
Ответ №1:
Когда я использую аутентификацию на стороне клиента, это работает, но мне нужно показывать диаграммы без входа в систему. И, конечно же, я удалил маркер доступа только для публикации.
Данные, к которым вы пытаетесь получить доступ, являются личными пользовательскими данными для доступа к личным пользовательским данным вам необходимо авторизоваться пользователем. Единственный способ сделать это-запросить доступ у пользователя. Для этого мы используем Oauth2.
Срок действия токенов доступа Oauth2 истекает через час, поэтому то, что вы пытаетесь сделать, не сработает. Токен, созданный вами на игровой площадке Google oauth, является маркером доступа.
Вам необходимо создать учетные данные веб-браузера в облачной консоли Google. не забудьте также установить источник JavaScript для вашего локального сервера, например: http://localhost:8080.
Это видео расскажет вам, как создать учетные данные. повторное определение веб-приложения