Как вы делаете вызовы Google People API с помощью модуля Moo::Google Perl?

Я пытаюсь использовать Moo::Google модуль для вызова API для API Google People. Мне удалось успешно выполнять простые вызовы API Календаря, но не API Людей. У меня есть следующий код, пытающийся использовать People API:

#! /usr/bin/env perl
use Moo::Google;

my $gapi = Moo::Google->new(debug => 0);
my $user = 'me@gmail.com';

$gapi->auth_storage->setup({ type => 'jsonfile', path => 'config.json'
+ });
$gapi->user($user);
$gapi->do_autorefresh;

$gapi->People->People->get({'resourceName'  => 'people/me', 'personFields' => 'emailAddresses'})->json;

Тем не менее, это возвращает undefined, Я пробовал разные варианты, но не повезло.

1 ответ

Решение

Решено методом более низкого уровня, api_query():

#! /usr/bin/env perl
use Moo::Google;
use Data::Dumper qw (Dumper);

my $gapi = Moo::Google->new(debug => 0);
my $user = 'me@gmail.com';

$gapi->auth_storage->setup({ type => 'jsonfile', path => 'config.json' });
$gapi->user($user);
$gapi->do_autorefresh;

$res = $gapi->api_query( {
    httpMethod => 'get',
    path => 'https://people.googleapis.com/v1/people/me',
    options => { personFields => 'emailAddresses' }
});

print Dumper $res;

Если есть лучший способ, мне было бы интересно услышать.

Другие вопросы по тегам