Ich muss mithilfe eines Dienstkontos Daten von der Google Search Console (Webmaster-Tools) abrufen.Die Google Search Console-API kann nicht mithilfe eines Dienstkontos abgefragt werden.
Bisher konnte ich eine access_token
für das Dienstkonto abrufen, die ich an die URL der Anfrage anhängen muss. Das Problem ist, dass ich nicht einen Weg, dies zu tun finden, das ist der Code, den ich bin mit:
https://content.googleapis.com/webmasters/v3/sites/http%3A%2F%2Fwww.WEBSITE.com/searchAnalytics/query?fields=responseAggregationType%2Crows&alt=json"
Stattdessen sollte es:
function retrieveSearchesByQuery(token)
{
gapi.client.webmasters.searchanalytics.query(
{
'access_token': token,
'siteUrl': 'http://www.WEBSITE.com',
'fields': 'responseAggregationType,rows',
'resource': {
'startDate': formatDate(cSDate),
'endDate': formatDate(cEDate),
'dimensions': [
'date'
]
}
})
.then(function(response) {
console.log(response);
})
.then(null, function(err) {
console.log(err);
});
}
Dies ist die URL durch die Funktion aufgerufen wird so etwas wie dieses:
https://content.googleapis.com/webmasters/v3/sites/http%3A%2F%2Fwww.WEBSITE.com/searchAnalytics/query?fields=responseAggregationType%2Crows&alt=json&access_token=XXX"
die gapi.client.webmasters.searchanalytics.query
nicht erkennt 'access_token'
als gültiger Schlüssel so ist es nicht an die uRL anhängen und das ist, warum ich ein 401 Unauthorized
als Antwort bekommen.
Wenn ich 'key'
anstelle von 'access_token'
der Parameter an die URL angehängt wird aber 'key'
wird für OAuth2
-Authentifizierung verwendet, um das Dienstkonto Token gebe ich nicht gültig ist.
Hat jemand eine Lösung oder einen Workaround dafür?
Dank! Die letzte Lösung ist, was funktioniert hat, aber mit der folgenden Syntax: 'gapi.auth.setToken ({ access_token: "YOUR_TOKEN_HERE" }); ', weil die Methode ein TokenObject akzeptiert, während ich eine Zeichenfolge habe. Jetzt kann ich mich einloggen und die Daten korrekt abrufen – Signo