読者です 読者をやめる 読者になる 読者になる

WebService::Simpleを使ってGoogle CGI API for Japanese Input

Google 日本語入力 - CGI API デベロッパーガイド
WebService::Simpleを使って書いてみました。
しかし、返ってくるJSONがクセモノで、"\uXXXX"形式でUnicodeエスケープされていて、末尾にカンマを付けてくるので注意。
Encode::JavaScript::UCSとJSON->new->relaxed([])でそれぞれ解決できました。

use strict;
use warnings;
use Encode;
use Encode::JavaScript::UCS;
use JSON;
use WebService::Simple;

my $text = shift or die;

my $japanese = WebService::Simple->new(
    base_url => 'http://www.google.com/transliterate',
    param => { langpair => 'ja-Hira|ja' },
);

my $res = $japanese->get({ text => $text });
my $json = decode('JavaScript-UCS', $res->content);

my $content = JSON->new->relaxed(1)->decode($json);