Как использовать google-api-php-client для управления облачным DNS

Я установил биллинг и все такое в консоли Google Developer и включил Cloud DNS APi, однако это очень запутанно, и документация, кажется, сводит меня с ума без реальных примеров.

Я хотел бы получить пример использования DNS-API Google Cloud с помощью сценария google-api-php-client из Github для добавления записи DNS, удаления записи DNS и обновления записи DNS.

Я также не уверен относительно того, какие учетные данные я должен использовать для этого, поскольку, похоже, нет никакого способа для создания учетных данных — только уникальный идентификатор приложения (который нельзя изменить) для этой оплачиваемой услуги.

Их документация указывает на stackoverflow для любых вопросов, касающихся использования этой библиотеки.

Заранее спасибо.

0

Решение

Я не использовал Cloud DNS, но API, похоже, придерживается того же формата, что и другие сервисы, поэтому я постараюсь дать вам представление о том, как это может работать.

Документация для библиотеки PHP не самая лучшая, но, глядя на исходный код и комментарии, вы можете понять, что должно быть сделано.

Я не уверен, что вы использовали библиотеку раньше, но первым шагом является создание и аутентификация Google_Client объект. Есть примеры на Github.

Вы создаете учетные данные на Консоль разработчиков. Выберите проект, а затем на боковой панели выберите API & auth / Credentials.

Приведенный ниже код, очевидно, всего лишь черновик, проверьте исходный код библиотеки и посмотрите все доступные методы и опции.

<?php

// Assuming $client is a Google_Client instance that
// is already authenticated

$dns = new Google_Service_Dns($client);

$change = new Google_Service_Dns_Change();

$addition1 = new Google_Service_Dns_ResourceRecordSet();
// configure $addition1, check the methods on the lib

$deletion1 = new Google_Service_Dns_ResourceRecordSet();
// configure $deletion1, check the methods on the lib

$additions = array($addition1, ..., $additionN);
$deletions = array($deletion1, ..., $deletionN);

$change->setAdditions($additions);
$change->setDeletions($deletions);
// other settings on $change, check the lib

$dns->changes->create($project, $managedZone, $change);
2

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

Других решений пока нет …

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