Was muss ich ändern, um den Authentifizierungscode in derselben Google-Eingabeaufforderung zu erhalten? Zu Ihrer Information: Ich verwende WordPress.
Änderungen:
Ich habe den neuen Authentifizierungs-Desktop-Client erstellt und kann jetzt den Umleitungs-URI wie oben erwähnt festlegen und damit den Authentifizierungscode und das Zugriffstoken erstellen. Beim Aufruf der Admin-API erhalte ich jedoch den Fehler ACCESS_TOKEN_SCOPE_INSUFFICIENT. Ich habe die Admin- und Daten-API überprüft und beide sind in meiner Google-Konsole aktiviert. Das Gleiche funktioniert einwandfrei, wenn ich den Webanwendungs-Authentifizierungsclient verwende. Unsere Anforderung besteht jedoch darin, das installierte Plugin zu verwenden, da dieses den Authentifizierungscode innerhalb der Eingabeaufforderung bereitstellt.
Unten ist der Prozess zum Erstellen eines access_token aufgeführt, der einwandfrei funktioniert:
Code: Select all
if (isset($_POST["save_code"]) && isset($_POST["access_code"])) {
$authCode = $_POST["access_code"];
$client = new Google_Client();
$client->setClientId('***');
$client->setClientSecret('***');
$client->setDeveloperKey('***');
// $client->addScope('https://www.googleapis.com/auth/analytics.readonly');
$client->setScopes([
'https://www.googleapis.com/auth/analytics',
'openid',
'https://www.googleapis.com/auth/analytics.readonly'
]);
$client->setRedirectUri('urn:ietf:wg:oauth:2.0:oob');
$client->setAccessType('offline');
$client->setIncludeGrantedScopes(true);
$client->authenticate($authCode);
$access_token = $client->getAccessToken();
var_dump($access_token);
// echo "
";
// print_r($access_token);
// exit;
}
$url = http_build_query(
array(
'next' => 'http://myproject.local.com/wp-admin/admin.php?page=analytify-settings',
'scope' => 'https://www.googleapis.com/auth/analytics',
'response_type' => 'code',
'redirect_uri' => 'urn:ietf:wg:oauth:2.0:oob',
'client_id' => '***'
)
);
?>
Mobile version