используя методы GCP api php client v1 - PullRequest
1 голос
/ 05 октября 2019

Я до сих пор застрял на этом вопросе и перефразирую его после небольшого изучения.

Я не могу найти примеры кода для использования google-api-php-client with v1 API таких методов, как projects/setIamPolicy() В этом примере

Пример PHP выглядит неработоспособным, поскольку $service->projects не определено. Эквивалентный пример nodejs «просто работает».

Я попытался переключиться на ветку v1-master, но тот же код все еще несовместим. Я попытался внести некоторые изменения, чтобы компенсировать методы аутентификации v2, использованные в этом примере, но зашел в тупик.

Как правильно использовать методы v1 через PHP?

РЕДАКТИРОВАТЬ Это выглядиткак этот простой файл композитора - мое решение:

{
    "require": {
        "google/apiclient": "^2.0",
        "google/apiclient-services": "0.50"
    }
}

1 Ответ

1 голос
/ 29 октября 2019

После воспроизведения инструкции по документации я столкнулся с той же ошибкой неопределенного свойства $ projects в $ service. Кажется, что примеры документации для PHP Cloud Resource Manager API v1 определяют классы (например, $ service = new Google_Service_CloudResourceManager ($ client);), которые фактически реализованы в v2.

v1 Library содержит переменные $ organization и $ projects.

v2 Библиотека содержит переменные $ папки и $ операции.

В примере документации сценарий пытается получить доступ к $ projects, используякласс v2, где $ проекты не существуют, но $ папок и $ операций существуют.

enter image description here

с использованием версии Google-api-php-client-services Библиотека , которая включает в себя последнюю версию n v1, вы можете получить доступ к $ папкам, $ liens, $ операций, $ организациям, $ проектам, но при этом использовать классы V2 google-api-php-client.

...