Github-Hooks-Receiver

 view release on metacpan or  search on metacpan

lib/Github/Hooks/Receiver.pm  view on Meta::CPAN


    my $app = sub {
        my $env = shift;
        my $req = Plack::Request->new($env);
        if ($req->method ne 'POST') {
            return [400, [], ['BAD REQUEST']];
        }

        # Parse JSON payload
        my $payload_json;
        if (lc $req->header('content-type') eq 'application/json') {
            $payload_json = $req->content;
        } elsif (lc $req->header('content-type') eq 'application/x-www-form-urlencoded') {
            $payload_json = $req->param('payload');
        }
        my $payload = eval { decode_json $payload_json }
            or return [400, [], ['BAD REQUEST']];

        my $event_name = $req->header('X-GitHub-Event');
        my $event = Github::Hooks::Receiver::Event->new(
            payload => $payload,
            event   => $event_name,
        );



( run in 0.972 second using v1.01-cache-2.11-cpan-524268b4103 )