日記
PHP+NuSOAPでGoogle Web API (13:50)Edit

>>PHP+NuSOAPで日本語したいと思って、こちらのページを参考にNuSOAPのSOAPリクエストを送信する部分のContent-Typeを書き換えてみたのですが、うまく行きません。Content-Lengthは削ってしまうとエラーが出てしまいます。

というコメントがあったんで、試しに新しいNuSOAP(Revision 1.59)で試してみたら、Conntent-TypeとContent-Lengthを削ってもうまく動かない。

で、真面目に中身を見てみたら、現在のGoogle Web APIは普通に日本語が通るようになっているみたいだ。SOAPレベルではUTF-8でやりとり出来ている。ただ、NuSOAPがISO-8859-1以外のことを考えていないため、せっかくUTF-8で返ってきた結果を強引にISO-8859-1に変換(utf8_decode)しようとしてデータを壊してしまっていた。

というわけで、NuSOAP Revision 1.59をベースに日本語でGoogle Web APIを利用できるようにした修正版nusoap.phpと元ファイルとの差分(nusoap1.59_jp.patch)、Google Web API操作ライブラリ(GoogleSearch.php)、それを使ったサンプル(sample.php)を作ってみた。

GoogleSearch.phpのGoogle Web APIs license keyを自分で取得したものにするだけで動くかな。


  • GoogleRecordSet.phpに、取得した結果セットの1行目を読み飛ばすバグがありました。現在のアーカイブに収録されているバージョン(1.2)では修正されています。
  • 2003/10/15 queryに対して行っていた余計な変換処理を省きました。

Published At2003-09-20 00:00Updated At2003-09-20 00:00