如何使用Perl6与Github API进行交互?

jsa*_*gle 6 http github rakudo perl6

我想在脚本中使用Github API,我希望将它用作使用Perl6更好的体验.但是,我甚至无法获得一个简单的概念证明.

通过一些测试,我意识到Github 要求你提供一个有效的用户代理,所以我转向HTTP :: UserAgent.无论我尝试什么,我都会收到以下错误:

Internal Error: 'server returned no data'
  in block  at /Applications/Rakudo/share/perl6/site/sources/FD28A8E22DFE16B70B757D9981C7B6C25543060C (HTTP::UserAgent) line 259
  in any  at /Applications/Rakudo/share/perl6/site/precomp/F91BAB44DF15C5C298C627DD5E0F9D819ED79939.1517344679.60204/FD/FD28A8E22DFE16B70B757D9981C7B6C25543060C line 1
  in method new at /Applications/Rakudo/share/perl6/site/sources/DDDD4497B34FC81BC1F5FF467999BC4DA2FA1CEB (HTTP::Response) line 25
  in method get-response at /Applications/Rakudo/share/perl6/site/sources/FD28A8E22DFE16B70B757D9981C7B6C25543060C (HTTP::UserAgent) line 291
  in method request at /Applications/Rakudo/share/perl6/site/sources/FD28A8E22DFE16B70B757D9981C7B6C25543060C (HTTP::UserAgent) line 159
  in method get at /Applications/Rakudo/share/perl6/site/sources/FD28A8E22DFE16B70B757D9981C7B6C25543060C (HTTP::UserAgent) line 102
  in method get at /Applications/Rakudo/share/perl6/site/sources/FD28A8E22DFE16B70B757D9981C7B6C25543060C (HTTP::UserAgent) line 105
  in block <unit> at reporter.pl6 line 12
Run Code Online (Sandbox Code Playgroud)

回购协议中甚至有一个例子似乎对我不起作用.

#!/usr/bin/env perl6
use v6;
use HTTP::UserAgent;

my $ua = HTTP::UserAgent.new;
$ua.timeout = 1;

my $response = $ua.get('https://github.com');

if $response.is-success {
    say $response.content;
} else {
    die $response.status-line;
}
Run Code Online (Sandbox Code Playgroud)

有关如何通过Perl 6连接Github的任何提示?我真的很喜欢这种语言的许多方面,但这类事情令人沮丧.

编辑:我继续#perl6 irc,没有人能够在其他操作系统上重现这一点.我让它在Debian上工作.问题似乎与OS X有关

jjm*_*elo 2

虽然处于 alpha 阶段,WebServices::GitHub但完全可以使用。您可以使用它来下载用户信息,或者如果您想与问题进行交互,也可以使用我的叉子。例如,该程序用于从特定存储库下载一些问题。