Вставка аккаунта с помощью Google Mirror API

РЕДАКТИРОВАТЬ

Мы сообщили Google об этом, и они решили это. Теперь ошибка исчезла, но $service->accounts->insert сейчас возвращается просто null вместо аккаунта.

Я пытаюсь вставить аккаунт через Google Mirror API. Итак, что я делаю:

клиент

$client = new Google_Client();
$client->setApplicationName($name);
$client->setClientId($client_id);
$client->setDeveloperKey($key);

обслуживание

$service = new Google_Service_Mirror($client);

$key = file_get_contents($key_file_location);
$cred = new Google_Auth_AssertionCredentials(
$service_account_name,
[
'https://www.googleapis.com/auth/glass.thirdpartyauth'
],
$key
);
$client->setAssertionCredentials($cred);
if($client->getAuth()->isAccessTokenExpired()) {
$client->getAuth()->refreshTokenWithAssertion($cred);
}
$_SESSION['service_token'] = $client->getAccessToken();

// THIS IS NOT WORKING
$acc = insert_account($service, $user_token, $user_mail);

Вставка аккаунта

function insert_account($service, $userToken, $email) {

$accountType = 'do.sli';

$userDataArray= array();
$userData1= new Google_Service_Mirror_UserData();
$userData1->setKey('some');
$userData1->setValue('data');
$userDataArray[]=$userData1;

$authTokenArray= array();
$authToken1= new Google_Service_Mirror_AuthToken();
$authToken1->setAuthToken('randomtoken');
$authToken1->setType('randomType');
$authTokenArray[]=$authToken1;

$postBody = new Google_Service_Mirror_Account();
$postBody->setUserData($userDataArray);
$postBody->setAuthTokens($authTokenArray);
$postBody->setFeatures(['access']);

try {
$account = $service->accounts->insert($userToken, $accountType, $email, $postBody);
} catch (Exception $e) {
var_dump($e->getMessage());
}
return $account;
}

И var_dump покажи мне это

Error calling POST https://www.googleapis.com/mirror/v1/accounts/USER_TOKEN/ACCOUNT/EMAIL?key=DEVELOPERS_KEY: (400) Invalid Value

Я не уверен, что я делаю неправильно … Я перепробовал много вещей. Не уверен, что проверить. Я пытаюсь аутентифицировать пользователя из Glass Store в нашем веб-приложении и вставить учетную запись, но это происходит.

Спасибо!

0

Решение

Эта ошибка обычно происходит, когда accountType вы используете не совпадает с тем, который был введен в бэкэнде MyGlass: убедитесь, что вы разрешили команде обзора accountType что вы хотите использовать и дважды проверьте на опечатки.

1

Другие решения

Я совершенно уверен, что у вас нет доступа к этому API до того, как ваше приложение будет принято в «магазине» Glassware.

Увидеть: https://developers.google.com/glass/develop/gdk/authentication

1

По вопросам рекламы [email protected]