【发布时间】:2015-10-10 05:59:14
【问题描述】:
我正在尝试使用 Perl google 电子表格 API,但我遇到了这个错误。我完全按照http://search.cpan.org/~danjou/Net-Google-Spreadsheets-0.1501/lib/Net/Google/Spreadsheets.pm 上的文档做的@
这里是代码
use Net::Google::Spreadsheets;
use Net::Google::DataAPI::Auth::OAuth2;
use Net::OAuth2::AccessToken;
my $oauth2;
my $service;
$oauth2 = Net::Google::DataAPI::Auth::OAuth2->new(
client_id => '<clientid>',
client_secret => '<client secret>',
scope => ['http://spreadsheets.google.com/feeds/'],
);
my $url = $oauth2->authorize_url(
access_type => 'offline',
approval_prompt => 'force',
);
print "$url\nEnter the code: ";
my $code = <STDIN>;
my $access_token = $oauth2->get_access_token($code) or die;
$service = Net::Google::Spreadsheets->new(auth => $oauth2);
print "Testing Spreadsheet";
# find a spreadsheet by key
my $spreadsheet = $service->spreadsheet( { key => '<spread sheet key>' }) or die $!;
在 Oauth 期间它不会引发错误,但是当我尝试访问电子表格 API 时,它会给出以下错误。
在字符串 eq 中使用未初始化的值 $nsURI /usr/local/lib/perl5/site_perl/5.14.2/mach/XML/LibXML.pm 第 1705 行。 在 /usr/local/lib/perl5/site_perl/5.14.2/mach/XML/LibXML.pm 第 1699 行。 XML::LibXML::Element::getElementsByTagNameNS(XML::LibXML::Element=SCALAR(0x80416ed20), undef, "entry") 调用于 /usr/local/lib/perl5/site_perl/5.14.2/XML/Atom/Feed.pm 第 84 行 XML::Atom::Feed::entries_libxml(XML::Atom::Feed=HASH(0x8041938e8)) 在 /usr/local/lib/perl5/site_perl/5.14.2/Net/Google/DataAPI.pm 调用 第 113 行 Net::Google::Spreadsheets::spreadsheets(Net::Google::Spreadsheets=HASH(0x803045600), HASH(0x802a5cb70)) 调用于 /usr/local/lib/perl5/site_perl/5.14.2/Net/Google/Spreadsheets.pm 行 57 Net::Google::Spreadsheets::ANON(CODE(0x803020438), Net::Google::Spreadsheets=HASH(0x803045600), HASH(0x802a5cb70)) 调用 在 /usr/local/lib/perl5/site_perl/5.14.2/mach/Mouse/Meta/Class.pm 行 381 Mouse::Meta::Class::ANON(Net::Google::Spreadsheets=HASH(0x803045600), HASH(0x802a5cb70)) 调用于 /usr/local/lib/perl5/site_perl/5.14.2/mach/Mouse/Meta/Class.pm 行 334 Net::Google::Spreadsheets::spreadsheets(Net::Google::Spreadsheets=HASH(0x803045600), HASH(0x802a5cb70)) 调用于 /usr/local/lib/perl5/site_perl/5.14.2/Net/Google/DataAPI.pm 第 132 行 Net::Google::Spreadsheets::spreadsheet(Net::Google::Spreadsheets=HASH(0x803045600), HASH(0x802a5cb70)) 在 try.pl 第 62 行调用
【问题讨论】:
标签: perl google-api google-sheets google-spreadsheet-api