package Net::ACME2::HTTP::Response; use strict; use warnings; use parent qw( HTTP::Tiny::UA::Response ); use JSON (); use Net::ACME2::X (); sub die_because_unexpected { my ($self) = @_; die Net::ACME2::X->create( 'UnexpectedResponse', { uri => $self->url(), status => $self->status(), reason => $self->reason(), headers => $self->headers(), }, ); } #Useful for everything but certificate issuance, apparently? sub content_struct { my ($self) = @_; my $json = ($self->{'_json'} ||= JSON->new()->allow_nonref()); return $json->decode( $self->content() ); } 1;