&keyword=%E7%A6%8F%E8%A2%8B
URLエンコードは特別な事ではなく、多くのWebサイトでも使われています。検索サイトでよく見かける長いURLがそうです。
URLに使える文字の種類は限られているため、日本語は使えません。そこで URL に使える文字に変換しているのです。
通常はプログラムで自動的にエンコードされるため、ウェブサイトの利用者が意識する事はありません。しかしシステムを作る時には必要になってきます。
今回はキーワードをエンコードして、楽天ウェブサービスで様々な商品の XML を表示してみましょう。私のほうでエンコードを行なう簡単な Webアプリケーションを用意しました。
【1】以下のサイトにアクセスします。
・エンコード・デコード
【2】「エンコード」を選択し、キーワードとして「福袋」と入力したら、「変換」ボタンをクリックします。
【3】入力した文字列が URLエンコード されました。
入力パラメーターとエンコードしたものを比べると、同じですね。
&keyword=%E7%A6%8F%E8%A2%8B
%E7%A6%8F%E8%A2%8B
【4】エンコードした文字列をコピーします。
【5】「クリア」ボタンをクリックします。
【6】フォームがクリアされました。
【7】今度は「デコード」を選択し、キーワードにコピーした文字列を貼り付けたら、「変換」ボタンをクリックします。
【8】文字列が デコード され、元のキーワード(福袋)に戻りました。
【9】この Webアプリケーションを使って、入力パラメーターのキーワードを変えて、楽天ウェブサービスのリクエストURLで、様々な商品の XML を表示してみてください。
・例 「カニ」
http://api.rakuten.co.jp/rws/1.11/rest?
developerId=[YOUR_developerID]
&operation=ItemSearch
&version=2007-10-25
&keyword=%E3%82%AB%E3%83%8B
&sort=%2BitemPrice
今回は URLエンコード、デコードを手動で行ないましたが、実際に動的なネットショップなどを作る時には、JavaScript のようなプログラムで自動的に行なうようにします。
【ワンポイント】
URLエンコードした文字列を使うと、以下のようなこともできます。
(1)適当なキーワードをエンコードします。
(2)以下のURLのパラメーターに、エンコードした文字列を加えてアクセスします。
例 「英語」
http://ws.bzen.net/rakutenkw/index.php?keyword=%E8%8B%B1%E4%BC%9A%E8%A9%B1
(3)キーワードで検索された状態で、商品が表示されました。
パラメーターを変えると、商品が変わります。面白いので試してみてください。