Read API documentation here: http://wiki.anidb.net/w/HTTP_API_Definition
Pretty simple with Composer, run:
composer require anime-db/ani-db-browser-bundle
Add AnimeDbAniDbBrowserBundle to your application kernel
// app/appKernel.php
public function registerBundles()
{
$bundles = array(
// ...
new AnimeDb\Bundle\AniDbBrowserBundle\AnimeDbAniDbBrowserBundle(),
);
}
# app/config/config.yml
anime_db_ani_db_browser:
api:
# API host
# As a default used 'http://api.anidb.net:9001'
host: 'http://api.anidb.net:9001'
# Prefix for API resurces
# As a default used '/httpapi/'
prefix: '/httpapi/'
# API version
# As a default used '1'
protover: 1
# You must register a client and use it here.
# See for more info:
# - http://anidb.net/perl-bin/animedb.pl?show=client
# - https://wiki.anidb.net/w/UDP_Clients
# - https://wiki.anidb.net/w/UDP_API_Definition
app:
# Verion of your client.
version: 1
# Your client name.
# You point it at registration here: http://anidb.net/perl-bin/animedb.pl?show=client
client: 'my_home_client'
# Your client code.
# You will receive it after registration.
code: 'api-team-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
First get a browser
$browser = $this->get('anime_db.ani_db.browser');
Get data for anime Seikai no Monshou (wiki):
$content = $browser->get(['query' => ['request' => 'anime', 'aid' => 1]]);
Catch exceptions
use AnimeDb\Bundle\AniDbBrowserBundle\Exception\BannedException;
use AnimeDb\Bundle\AniDbBrowserBundle\Exception\NotFoundException;
try {
$content = $browser->get('anime?aid=1');
} catch (BannedException $e) {
// you are banned
} catch (NotFoundException $e) {
// anime not found
} catch (\Exception $e) {
// other exceptions
}
You can customize request options. See Guzzle Documentation.
This bundle is under the GPL v3 license. See the complete license in the file: LICENSE