$client->genre_raw()
=item * $client->info_raw()
=item * $client->now_on_air_raw()
Returns raw JSON response of each API.
=back
=head1 FOR DEVELOPERS
Tests which are calling web API directly in
package WWW::NHKProgram::API::Provider::List;
use strict;
use warnings;
use utf8;
use JSON ();
use WWW::NHKProgram::API::Area qw/fetch_area_id/;
use WWW::NHKProgram::API::Service qw/fetch_service_i
.json",
{
area => $area,
service => $service,
date => $date,
},
$raw,
);
return $content if $raw;
return JSON::decode_json
package WWW::NHKProgram::API::Provider::Info;
use strict;
use warnings;
use utf8;
use JSON ();
use WWW::NHKProgram::API::Area qw/fetch_area_id/;
use WWW::NHKProgram::API::Service qw/fetch_service_i
s.json",
{
area => $area,
service => $service,
id => $id,
},
$raw,
);
return $content if $raw;
return JSON::decode_json(
package WWW::NHKProgram::API::Provider::Now;
use strict;
use warnings;
use utf8;
use JSON ();
use WWW::NHKProgram::API::Area qw/fetch_area_id/;
use WWW::NHKProgram::API::Service qw/fetch_service_id
a)s/%(service)s.json",
{
area => $area,
service => $service,
},
$raw,
);
return $content if $raw;
return JSON::decode_json($content)->{no
package WWW::NHKProgram::API::Provider::Genre;
use strict;
use warnings;
use utf8;
use JSON ();
use WWW::NHKProgram::API::Area qw/fetch_area_id/;
use WWW::NHKProgram::API::Genre qw/fetch_genre_id
:Provider::Common::call(
$context,
"genre/%(area)s/%(service)s/%(genre)s/%(date)s.json",
{
area => $area,
service => $service,
genre =>
$genre,
date => $date,
},
$raw,
);
return $content if $raw;
return JSON::decode_json($content)->{list}->{$service};
}
1;
package WWW::NHKProgram::API::Provider::Common;
use strict;
use warnings;
use utf8;
use Carp;
use JSON ();
use Text::Sprintf::Named qw/named_sprintf/;
use constant API_ENDPOINT => "http://api.nhk.or.
ess) {
if ($raw) {
croak $res->{content};
}
my $fault = JSON::decode_json($res->{content})->{fault};
my $fault_str = $fault->{faultstring};
my $faul