(57)【要約】【課題】ウェブブラウザーが、ウェブサーバーから受信したＨＴＴＰレスポンスに含まれるＨＴＭＬデータに基づき画面を表示する技術を、益々ユーザーフレンドリーとする。【解決手段】ウェブサーバーは、ウェブブラウザーから、画面表示ＨＴＴＰリクエストを受信し、画面表示ＨＴＴＰリクエストに基づき、ウェブブラウザーが特定のウェブブラウザーであるか否かを判断し、ウェブブラウザーが特定のウェブブラウザーでないと判断すると、画面に表示すべき画像をエンコードしたデータを含む第１のＨＴＭＬデータを生成し、第１のＨＴＭＬデータを含む第１のＨＴＴＰレスポンスを生成し、ウェブブラウザーが特定のウェブブラウザーであると判断すると、画像のリンク情報を含む第２のＨＴＭＬデータを生成し、第２のＨＴＭＬデータを含む第２のＨＴＴＰレスポンスを生成し、ウェブブラウザーに、第１のＨＴＴＰレスポンス又は第２のＨＴＴＰレスポンスを返信する。【選択図】図４
2020047148.tif 000002
【特許請求の範囲】
【請求項１】
ウェブブラウザーから、画面表示ＨＴＴＰリクエストを受信し、
前記画面表示ＨＴＴＰリクエストに基づき、前記ウェブブラウザーが特定のウェブブラウザーであるか否かを判断し、
前記ウェブブラウザーが前記特定のウェブブラウザーでないと判断すると、前記画面に表示すべき画像をエンコードしたデータを含む第１のＨＴＭＬデータを生成し、前記第１のＨＴＭＬデータを含む第１のＨＴＴＰレスポンスを生成し、
前記ウェブブラウザーが前記特定のウェブブラウザーであると判断すると、前記画像のリンク情報を含む第２のＨＴＭＬデータを生成し、前記第２のＨＴＭＬデータを含む第２のＨＴＴＰレスポンスを生成し、
前記ウェブブラウザーに、前記第１のＨＴＴＰレスポンス又は前記第２のＨＴＴＰレスポンスを返信する
ウェブサーバー
を具備する情報処理装置。
【請求項２】
請求項１に記載の情報処理装置であって、
前記ウェブサーバーは、前記画面表示ＨＴＴＰリクエストのユーザーエージェントヘッダーに、特定のブラウザー名及び特定のバージョンが記述されている場合、前記ウェブブラウザーが前記特定のウェブブラウザーであると判断する
情報処理装置。
【請求項３】
請求項２に記載の情報処理装置であって、
前記ウェブサーバーは、前記画面表示ＨＴＴＰリクエストのユーザーエージェントヘッダーに、ブラウザー名として「NetFront」及びバージョンとして「3.x」が記述されている場合、前記ウェブブラウザーが前記特定のウェブブラウザーであると判断する
情報処理装置。
【請求項４】
請求項１乃至３の何れか一項に記載の情報処理装置であって、
前記ウェブサーバーは、
前記画面表示ＨＴＴＰリクエストの送信元が、前記情報処理装置内のウェブブラウザーであるか否かを判断し、
前記送信元が前記情報処理装置内の前記ウェブブラウザーであると判断すると、
以前受信した前記画面表示ＨＴＴＰリクエストに基づき、前記ウェブブラウザーが前記特定のウェブブラウザーであるか否かを判断したことにより、前記ウェブブラウザーが前記特定のウェブブラウザーであるか否かが判断済みであるか否かを判断し、
前記ウェブブラウザーが前記特定のウェブブラウザーであるか否かが判断済みである場合、判断済みである前記特定のウェブブラウザーであるか否かに応じた前記第１のＨＴＭＬデータ又は前記第２のＨＴＭＬデータを生成し、
前記ウェブブラウザーが前記特定のウェブブラウザーであるか否かが判断済みでない場合、前記ウェブブラウザーが特定のウェブブラウザーであるか否かを判断し、
前記送信元が前記情報処理装置内の前記ウェブブラウザーでないと判断すると、
前記ウェブブラウザーが特定のウェブブラウザーであるか否かを判断する
情報処理装置。
【請求項５】
情報処理装置のウェブサーバーを、
ウェブブラウザーから、画面表示ＨＴＴＰリクエストを受信し、
前記画面表示ＨＴＴＰリクエストに基づき、前記ウェブブラウザーが特定のウェブブラウザーであるか否かを判断し、
前記ウェブブラウザーが前記特定のウェブブラウザーでないと判断すると、前記画面に表示すべき画像をエンコードしたデータを含む第１のＨＴＭＬデータを生成し、前記第１のＨＴＭＬデータを含む第１のＨＴＴＰレスポンスを生成し、
前記ウェブブラウザーが前記特定のウェブブラウザーであると判断すると、前記画像のリンク情報を含む第２のＨＴＭＬデータを生成し、前記第２のＨＴＭＬデータを含む第２のＨＴＴＰレスポンスを生成し、
前記ウェブブラウザーに、前記第１のＨＴＴＰレスポンス又は前記第２のＨＴＴＰレスポンスを返信する
よう動作させるウェブアプリケーションプログラム。
【請求項６】
ウェブブラウザーと、
前記ウェブブラウザーから、画面表示ＨＴＴＰリクエストを受信し、
前記画面表示ＨＴＴＰリクエストに基づき、前記ウェブブラウザーが特定のウェブブラウザーであるか否かを判断し、
前記ウェブブラウザーが前記特定のウェブブラウザーでないと判断すると、前記画面に表示すべき画像をエンコードしたデータを含む第１のＨＴＭＬデータを生成し、前記第１のＨＴＭＬデータを含む第１のＨＴＴＰレスポンスを生成し、
前記ウェブブラウザーが前記特定のウェブブラウザーであると判断すると、前記画像のリンク情報を含む第２のＨＴＭＬデータを生成し、前記第２のＨＴＭＬデータを含む第２のＨＴＴＰレスポンスを生成し、
前記ウェブブラウザーに、前記第１のＨＴＴＰレスポンス又は前記第２のＨＴＴＰレスポンスを返信する
ウェブサーバーと
を具備する情報処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、ウェブブラウザーから受信した画面表示ＨＴＴＰリクエストに基づきＨＴＭＬデータを生成し、生成したＨＴＭＬデータを含むＨＴＴＰレスポンスをウェブブラウザーに送信するウェブサーバーに関する。本開示は、さらに、このウェブサーバーが実行するウェブアプリケーションプログラムに関する。本開示は、さらに、このウェブサーバー及びこのウェブブラウザーを有する情報処理システムに関する。
【背景技術】
【０００２】
ウェブサーバーが、ウェブブラウザーから受信した画面表示ＨＴＴＰリクエストに基づきＨＴＭＬデータを生成し、生成したＨＴＭＬデータを含むＨＴＴＰレスポンスをウェブブラウザーに送信し、ウェブブラウザーが、受信したＨＴＴＰレスポンスに含まれるＨＴＭＬデータに基づき画面を表示する技術が知られている（特許文献１）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−１３９９８１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ウェブサーバーが、ウェブブラウザーから受信した画面表示ＨＴＴＰリクエストに基づきＨＴＭＬデータを生成し、生成したＨＴＭＬデータを含むＨＴＴＰレスポンスをウェブブラウザーに送信し、ウェブブラウザーが、受信したＨＴＴＰレスポンスに含まれるＨＴＭＬデータに基づき画面を表示する技術は、益々ユーザーフレンドリーであることが望まれる。
【課題を解決するための手段】
【０００５】
本開示の一形態に係る情報処理装置は、
ウェブブラウザーから、画面表示ＨＴＴＰリクエストを受信し、
前記画面表示ＨＴＴＰリクエストに基づき、前記ウェブブラウザーが特定のウェブブラウザーであるか否かを判断し、
前記ウェブブラウザーが前記特定のウェブブラウザーでないと判断すると、前記画面に表示すべき画像をエンコードしたデータを含む第１のＨＴＭＬデータを生成し、前記第１のＨＴＭＬデータを含む第１のＨＴＴＰレスポンスを生成し、
前記ウェブブラウザーが前記特定のウェブブラウザーであると判断すると、前記画像のリンク情報を含む第２のＨＴＭＬデータを生成し、前記第２のＨＴＭＬデータを含む第２のＨＴＴＰレスポンスを生成し、
前記ウェブブラウザーに、前記第１のＨＴＴＰレスポンス又は前記第２のＨＴＴＰレスポンスを返信する
ウェブサーバー
を具備する。
【０００６】
これにより、ウェブアプリケーションは何種類ものウェブブラウザーで使用されることがあるが、特定のウェブブラウザーであるか否かに拘わらず、ウェブブラウザーは、確実に、第１のＨＴＴＰレスポンス又は第２のＨＴＴＰレスポンスに基づき画面を表示することができ、互換性が担保される。また、ウェブブラウザーが特定のウェブブラウザーでない場合は、画像をエンコードしたデータを含む第１のＨＴＭＬデータを生成するので、通信回数が少なくて済み、画面の表示に掛かる時間を短縮する（パフォーマンスを上げる）ことができる。
【０００７】
前記ウェブサーバーは、前記画面表示ＨＴＴＰリクエストのユーザーエージェントヘッダーに、特定のブラウザー名及び特定のバージョンが記述されている場合、前記ウェブブラウザーが前記特定のウェブブラウザーであると判断する。
【０００８】
これにより、ウェブサーバーは、何種類もの情報処理装置のウェブブラウザーが特定のバージョンであるか否かを記憶しておく必要が無い。さらに、新しい機種の情報処理装置のウェブブラウザーからの画面表示ＨＴＴＰリクエストを受信した場合、画面表示ＨＴＴＰリクエストのユーザーエージェントヘッダーに基づき、そのウェブブラウザーが特定のウェブブラウザーか否か判断できる。このため、新しい機種の情報処理装置がリリースされた場合も、ウェブアプリケーションを変更する必要も無く、互換性が担保される。
【０００９】
一例として、前記ウェブサーバーは、前記画面表示ＨＴＴＰリクエストのユーザーエージェントヘッダーに、ブラウザー名として「NetFront」及びバージョンとして「3.x」が記述されている場合、前記ウェブブラウザーが前記特定のウェブブラウザーであると判断する。
【００１０】
前記ウェブサーバーは、
前記画面表示ＨＴＴＰリクエストの送信元が、前記情報処理装置内のウェブブラウザーであるか否かを判断し、
前記送信元が前記情報処理装置内の前記ウェブブラウザーであると判断すると、
以前受信した前記画面表示ＨＴＴＰリクエストに基づき、前記ウェブブラウザーが前記特定のウェブブラウザーであるか否かを判断したことにより、前記ウェブブラウザーが前記特定のウェブブラウザーであるか否かが判断済みであるか否かを判断し、
前記ウェブブラウザーが前記特定のウェブブラウザーであるか否かが判断済みである場合、判断済みである前記特定のウェブブラウザーであるか否かに応じた前記第１のＨＴＭＬデータ又は前記第２のＨＴＭＬデータを生成し、
前記ウェブブラウザーが前記特定のウェブブラウザーであるか否かが判断済みでない場合、前記ウェブブラウザーが特定のウェブブラウザーであるか否かを判断し、
前記送信元が前記情報処理装置内の前記ウェブブラウザーでないと判断すると、
前記ウェブブラウザーが特定のウェブブラウザーであるか否かを判断する。
【００１１】
これにより、ウェブサーバーが、画面表示ＨＴＴＰリクエストに基づき、ウェブブラウザーが特定のウェブブラウザーであるか否かを判断する必要が無い。このため、画面の表示に掛かる時間を益々短縮する（パフォーマンスを上げる）ことができる。
【００１２】
本開示の一形態に係るウェブアプリケーションプログラムは、
情報処理装置のウェブサーバーを、
ウェブブラウザーから、画面表示ＨＴＴＰリクエストを受信し、
前記画面表示ＨＴＴＰリクエストに基づき、前記ウェブブラウザーが特定のウェブブラウザーであるか否かを判断し、
前記ウェブブラウザーが前記特定のウェブブラウザーでないと判断すると、前記画面に表示すべき画像をエンコードしたデータを含む第１のＨＴＭＬデータを生成し、前記第１のＨＴＭＬデータを含む第１のＨＴＴＰレスポンスを生成し、
前記ウェブブラウザーが前記特定のウェブブラウザーであると判断すると、前記画像のリンク情報を含む第２のＨＴＭＬデータを生成し、前記第２のＨＴＭＬデータを含む第２のＨＴＴＰレスポンスを生成し、
前記ウェブブラウザーに、前記第１のＨＴＴＰレスポンス又は前記第２のＨＴＴＰレスポンスを返信する
よう動作させる。
【００１３】
本開示の一形態に係る情報処理システムは、
ウェブブラウザーと、
前記ウェブブラウザーから、画面表示ＨＴＴＰリクエストを受信し、
前記画面表示ＨＴＴＰリクエストに基づき、前記ウェブブラウザーが特定のウェブブラウザーであるか否かを判断し、
前記ウェブブラウザーが前記特定のウェブブラウザーでないと判断すると、前記画面に表示すべき画像をエンコードしたデータを含む第１のＨＴＭＬデータを生成し、前記第１のＨＴＭＬデータを含む第１のＨＴＴＰレスポンスを生成し、
前記ウェブブラウザーが前記特定のウェブブラウザーであると判断すると、前記画像のリンク情報を含む第２のＨＴＭＬデータを生成し、前記第２のＨＴＭＬデータを含む第２のＨＴＴＰレスポンスを生成し、
前記ウェブブラウザーに、前記第１のＨＴＴＰレスポンス又は前記第２のＨＴＴＰレスポンスを返信する
ウェブサーバーと
を具備する。
【発明の効果】
【００１４】
本開示によれば、ウェブサーバーが、ウェブブラウザーから受信した画面表示ＨＴＴＰリクエストに基づきＨＴＭＬデータを生成し、生成したＨＴＭＬデータを含むＨＴＴＰレスポンスをウェブブラウザーに送信し、ウェブブラウザーが、受信したＨＴＴＰレスポンスに含まれるＨＴＭＬデータに基づき画面を表示する技術は、益々ユーザーフレンドリーとすることを図れる。
【００１５】
なお、ここに記載された効果は必ずしも限定されるものではなく、本開示中に記載されたいずれかの効果であってもよい。
【図面の簡単な説明】
【００１６】
【図１】本開示の第１の実施形態に係る情報処理装置を示す。
【図２】情報処理装置の機能的構成を示す。
【図３】ウェブブラウザーの動作フローを示す。
【図４】ウェブサーバーの動作フローを示す。
【図５】本開示の第２の実施形態に係るウェブサーバーの動作フローを示す。
【発明を実施するための形態】
【００１７】
以下、図面を参照しながら、本開示の実施形態を説明する。各実施形態において、情報処理装置の一例として画像形成装置（例えば、ＭＦＰ、Multifunction Peripheral）を挙げて説明する。しかしながら、情報処理装置は、画像形成装置に限定されない。
【００１８】
Ｉ．第１の実施形態
【００１９】
１．情報処理装置のハードウェア構成
【００２０】
図１は、本開示の第１の実施形態に係る情報処理装置を示す。
【００２１】
情報処理装置１０は、制御回路１１を備える。制御回路１１は、プロセッサーであるＣＰＵ１１ａ（Central Processing Unit）、ＲＡＭ１１ｂ（Random Access Memory）、メモリーであるＲＯＭ１１ｃ（Read Only Memory）及び専用のハードウェア回路等から構成され、情報処理装置１０の全体的な動作制御を司る。ＣＰＵ１１ａは、ＲＯＭ１１ｃが記憶する情報処理プログラム（ウェブアプリケーションプログラムを含む）をＲＡＭ１１ｂにロードして実行する。ＲＯＭ１１ｃは、ＣＰＵ１１ａが実行するプログラムやデータなどを固定的に記憶する。ＲＯＭ１１ｃは、非一過性のコンピューター読み取り可能な記録媒体の一例である。
【００２２】
制御回路１１は、画像読取部１２、画像処理部１４、画像メモリー１５、画像形成部１６、タッチパネルとして表示部１７ａを備える操作部１７、記憶装置１８、ファクシミリ通信部１９及びネットワーク通信インターフェース１３等と接続されている。制御回路１１は、接続されている上記各部の動作制御や、各部との間での信号又はデータの送受信を行う。
【００２３】
２．情報処理装置の機能的構成
【００２４】
図２は、情報処理装置の機能的構成を示す。
【００２５】
情報処理装置１０のＣＰＵ１１ａは、制御回路１１のＲＯＭ１１ｃが記憶するウェブアプリケーションプログラムをＲＡＭ１１ｂにロードして実行することにより、ウェブブラウザー１０１及びウェブサーバー１０２として動作する。
【００２６】
ウェブサーバー１０２は、ウェブブラウザー１０１から、画面表示ＨＴＴＰリクエストを受信し、画面表示ＨＴＴＰリクエストに基づき、ウェブブラウザー１０１が古いタイプの（特定の）ウェブブラウザーであるか否かを判断し、ウェブブラウザー１０１が古いタイプのウェブブラウザーでないと判断すると、画面に表示すべき画像をエンコードしたデータを含む第１のＨＴＭＬデータを生成し、第１のＨＴＭＬデータを含む第１のＨＴＴＰレスポンスを生成し、ウェブブラウザー１０１が古いタイプのウェブブラウザーであると判断すると、画像のリンク情報を含む第２のＨＴＭＬデータを生成し、第２のＨＴＭＬデータを含む第２のＨＴＴＰレスポンスを生成し、ウェブブラウザー１０１に、第１のＨＴＴＰレスポンス又は第２のＨＴＴＰレスポンスを返信する。
【００２７】
ウェブブラウザー１０１は、ウェブサーバー１０２から、第１のＨＴＴＰレスポンスを受信する。ウェブブラウザー１０１は、第１のＨＴＭＬデータに含まれるエンコードされた画像のデータをデコードする。ウェブブラウザー１０１は、デコードした画像を含む画面を表示部１７ａに表示する。
【００２８】
ウェブブラウザー１０１は、ウェブサーバー１０２から、第２のＨＴＴＰレスポンスを受信する。ウェブブラウザー１０１は、第２のＨＴＭＬデータに含まれるリンク情報を含む画像データ取得ＨＴＴＰリクエスト（即ち、リンク情報により識別される画像のデータを取得するためのリクエスト）を、ウェブサーバー１０２に送信する。ウェブブラウザー１０１は、画像のデータを、ウェブサーバー１０２から受信する。ウェブブラウザー１０１は、ウェブサーバー１０２から受信した第２のＨＴＴＰレスポンスに含まれる第２のＨＴＭＬデータに、受信した画像のデータを埋め込むことにより、この画像を含む画面を表示部１７ａに表示する。
【００２９】
３．情報処理装置の動作フロー
【００３０】
図３は、ウェブブラウザーの動作フローを示す。
【００３１】
ウェブブラウザー１０１は、画面表示ＨＴＴＰリクエストを、ウェブサーバー１０２に送信する（ステップＳ１０１）。「画面表示ＨＴＴＰリクエスト」は、ウェブサーバーにより実現されるアプリケーションの何らかの画面を、表示部１７ａに表示するためのリクエストである。
【００３２】
図４は、ウェブサーバーの動作フローを示す。
【００３３】
ウェブサーバー１０２は、画面表示ＨＴＴＰリクエストを、ウェブブラウザー１０１から受信する（ステップＳ２０１）。
【００３４】
ＨＴＴＰリクエストは、ユーザーエージェントヘッダーを含む。具体例として、或る機種の画像形成装置のユーザーエージェントヘッダーは、以下の様に記述される。
UserAgent:[Mozilla/5.0 (Standard; NF41SW/1.1; like Gecko; TASKalfa 8001i) NetFront/4.1] 
【００３５】
別の機種の画像形成装置のユーザーエージェントヘッダーは、以下の様に記述される。
UserAgent:[Mozilla/5.0 (Standard; NF34SW/1.1; like Gecko; TASKalfa 5500i(J)) NetFront/3.4]
【００３６】
ウェブサーバー１０２は、画面表示ＨＴＴＰリクエストに基づき、ウェブブラウザー１０１が古いタイプの（特定の）ウェブブラウザーであるか否かを判断する（ステップＳ２０２）。具体的には、ウェブサーバー１０２は、画面表示ＨＴＴＰリクエストのユーザーエージェントヘッダーに、特定のブラウザー名及び特定のバージョンが記述されている場合、ウェブブラウザー１０１が古いタイプのウェブブラウザーであると判断する。本例の場合、ウェブサーバー１０２は、画面表示ＨＴＴＰリクエストのユーザーエージェントヘッダーに、ブラウザー名として「NetFront」及びバージョンとして「3.x」が共に記述されている場合（上記のユーザーエージェントヘッダーのうち後者）、ウェブブラウザー１０１が古いタイプのウェブブラウザーであると判断する（ステップＳ２０３、ＹＥＳ）。ブラウザー名として「NetFront」が記述されていない及び／又はバージョンとして「3.x」が記述されていない場合（上記のユーザーエージェントヘッダーのうち前者）、ウェブサーバー１０２は、ウェブブラウザー１０１が古いタイプのウェブブラウザーでないと判断する（ステップＳ２０３、ＮＯ）。
【００３７】
以下、（１）ウェブブラウザー１０１が古いタイプのウェブブラウザーでない場合（ステップＳ２０３、ＮＯ）と、（２）ウェブブラウザー１０１が古いタイプのウェブブラウザーである場合（ステップＳ２０３、ＹＥＳ）とに場合分けして説明する。
【００３８】
（１）ウェブブラウザー１０１が古いタイプのウェブブラウザーでない場合（ステップＳ２０３、ＮＯ）
【００３９】
ウェブサーバー１０２は、画面に表示すべき画像を記憶装置１８から読み出す。ウェブサーバー１０２は、画面に表示すべき画像をエンコード（典型的には、ＢＡＳＥ６４エンコード）したデータを含む（逆に言えば、画像のリンク情報を含まない）第１のＨＴＭＬデータを生成する（ステップＳ２０４）。ウェブサーバー１０２は、ヘッダと、生成した第１のＨＴＭＬデータとを含む第１のＨＴＴＰレスポンスを生成する。ウェブサーバー１０２は、ウェブブラウザー１０１に、生成した第１のＨＴＴＰレスポンスを返信する（ステップＳ２０６）。ウェブサーバー１０２の動作は、これで終了である（ステップＳ２０７、ＮＯ）。
【００４０】
ウェブブラウザー１０１は、ウェブサーバー１０２から、第１のＨＴＴＰレスポンスを受信する（ステップＳ１０２）。ウェブブラウザー１０１は、受信した第１のＨＴＴＰレスポンスに含まれる第１のＨＴＭＬデータが、画像のリンク情報を含まないと判断する（ステップＳ１０３、ＮＯ）。ウェブブラウザー１０１は、第１のＨＴＭＬデータに含まれるエンコードされた画像のデータをデコードする。ウェブブラウザー１０１は、デコードした画像を含む画面を表示部１７ａに表示する（ステップＳ１０４）。
【００４１】
（２）ウェブブラウザー１０１が古いタイプのウェブブラウザーである場合（ステップＳ２０３、ＹＥＳ）
【００４２】
ウェブサーバー１０２は、画面に表示すべき画像のリンク情報を記憶装置１８から読み出す。ウェブサーバー１０２は、画面に表示すべき画像のリンク情報を含む第２のＨＴＭＬデータを生成する（ステップＳ２０５）。ウェブサーバー１０２は、ヘッダと、生成した第２のＨＴＭＬデータとを含む第２のＨＴＴＰレスポンスを生成する。ウェブサーバー１０２は、ウェブブラウザー１０１に、生成した第２のＨＴＴＰレスポンスを返信する（ステップＳ２０６）。
【００４３】
ウェブブラウザー１０１は、ウェブサーバー１０２から、第２のＨＴＴＰレスポンスを受信する（ステップＳ１０２）。ウェブブラウザー１０１は、受信した第２のＨＴＴＰレスポンスに含まれる第２のＨＴＭＬデータが、画像のリンク情報を含むと判断する（ステップＳ１０３、ＹＥＳ）。ウェブブラウザー１０１は、第２のＨＴＭＬデータに含まれるリンク情報を含む画像データ取得ＨＴＴＰリクエスト（即ち、リンク情報により識別される画像のデータを取得するためのリクエスト）を、ウェブサーバー１０２に送信する（ステップＳ１０５）。
【００４４】
ウェブサーバー１０２は、画像データ取得ＨＴＴＰリクエストを、ウェブブラウザー１０１から受信する（ステップＳ２０７、ＹＥＳ）。ウェブサーバー１０２は、画像データ取得ＨＴＴＰリクエストに含まれるリンク情報により識別される画像のデータを、記憶装置１８から読み出す。ウェブサーバー１０２は、読み出した画像のデータを、ウェブブラウザー１０１に送信する（ステップＳ２０８）。
【００４５】
ウェブブラウザー１０１は、画像のデータを、ウェブサーバー１０２から受信する（ステップＳ１０６）。ウェブブラウザー１０１は、第２のＨＴＭＬデータに含まれる全てのリンク情報について（ステップＳ１０７、ＹＥＳ）、画像データ取得ＨＴＴＰリクエストをウェブサーバー１０２に送信し（ステップＳ１０５）、画像のデータをウェブサーバー１０２から受信する（ステップＳ１０６）。
【００４６】
ウェブサーバーは、第２のＨＴＭＬデータに含まれる全てのリンク情報について（ステップＳ２０７、ＮＯ）、画像データ取得ＨＴＴＰリクエストをウェブサーバー１０２から受信し、画像のデータをウェブサーバー１０２に送信する。
【００４７】
ウェブブラウザー１０１は、ウェブサーバー１０２から受信した第２のＨＴＴＰレスポンス（ステップＳ１０２）に含まれる第２のＨＴＭＬデータに、全ての受信した画像のデータを埋め込むことにより、この画像を含む画面を表示部１７ａに表示する（ステップＳ１０８）。
【００４８】
ＩＩ．第２の実施形態
【００４９】
第２の実施形態の情報処理装置１０のハードウェア構成及び機能的構成は、第１の実施形態の情報処理装置１０のハードウェア構成（図１）及び機能的構成（図２）と同様である。第２の実施形態のウェブブラウザー１０１の動作フローは、第１の実施形態のウェブブラウザー１０１の動作フロー（図３）と同様である。第２の実施形態のウェブサーバー１０２の動作フローのみ、第１の実施形態のウェブサーバー１０２の動作フロー（図４）と異なる。従って、第２の実施形態のウェブサーバー１０２の動作フローのみ説明する。第１の実施形態のウェブサーバー１０２の動作フロー（図４）と同じ一部のステップは、図４と同じステップ番号を付す。
【００５０】
図５は、本開示の第２の実施形態に係るウェブサーバーの動作フローを示す。
【００５１】
ウェブサーバー１０２は、画面表示ＨＴＴＰリクエストを、ウェブブラウザー１０１から受信する（ステップＳ２０１）。ウェブサーバー１０２は、画面表示ＨＴＴＰリクエストの送信元が、情報処理装置１０内のウェブブラウザーであるか否かを判断する（ステップＳ２１０）。具体的には、ウェブサーバー１０２は、画面表示ＨＴＴＰリクエストのヘッダーに記述されたＩＰアドレスが、情報処理装置１０のＩＰアドレスであれば、画面表示ＨＴＴＰリクエストの送信元が、情報処理装置１０内のウェブブラウザー１０１であると判断する（ステップＳ２１０、ＹＥＳ）。
【００５２】
送信元が情報処理装置１０内のウェブブラウザー１０１である場合（ステップＳ２１０、ＹＥＳ）、ウェブサーバー１０２は、ウェブブラウザー１０１が古いタイプのウェブブラウザーであるか否かが判断済みであるか否かを判断する（ステップＳ２１１）。具体的には、ウェブサーバー１０２は、以前受信した画面表示ＨＴＴＰリクエストに基づき、ウェブブラウザー１０１が古いタイプのウェブブラウザーであるか否かを判断したことにより、ウェブブラウザー１０１が古いタイプのウェブブラウザーであるか否かが判断済みであるか否かを判断する。即ち、ウェブサーバー１０２は、以前、情報処理装置１０内のウェブブラウザー１０１から画面表示ＨＴＴＰリクエストを受信したことがあれば、そのときに、情報処理装置１０内のウェブブラウザー１０１が古いタイプのウェブブラウザーであるか否かを判断したはずである。従って、ウェブサーバー１０２は、以前、情報処理装置１０内のウェブブラウザー１０１から画面表示ＨＴＴＰリクエストを受信したことがあれば、情報処理装置１０内のウェブブラウザー１０１が古いタイプのウェブブラウザーであるか否かが判断済みである。
【００５３】
ウェブサーバー１０２は、ウェブブラウザー１０１が古いタイプのウェブブラウザーであるか否かが判断済みであると判断する（ステップＳ２１１、ＹＥＳ）。この場合、ウェブブラウザー１０１が古いタイプのウェブブラウザーでないと判断済みであれば（ステップＳ２０３、ＮＯ）、ウェブサーバー１０２は、ステップＳ２０４に進む。一方、ウェブブラウザー１０１が古いタイプのウェブブラウザーであると判断済みであれば（ステップＳ２０３、ＹＥＳ）、ウェブサーバー１０２は、ステップＳ２０５に進む。その後の処理は第１の実施形態と同じである。
【００５４】
一方、ウェブサーバー１０２は、以前、情報処理装置１０内のウェブブラウザー１０１から画面表示ＨＴＴＰリクエストを受信したことが無い場合、ウェブブラウザー１０１が古いタイプのウェブブラウザーであるか否かが判断済みでないと判断する（ステップＳ２１１、ＮＯ）。この場合、ウェブサーバー１０２は、受信した画面表示ＨＴＴＰリクエスト（ステップＳ２０１）に基づき、ウェブブラウザー１０１が古いタイプの（特定の）ウェブブラウザーであるか否かを判断する（ステップＳ２０２）。以下の処理は第１の実施形態と同じである。
【００５５】
一方、送信元が情報処理装置１０内のウェブブラウザー１０１でない場合（ステップＳ２１０、ＮＯ）、ウェブサーバー１０２は、受信した画面表示ＨＴＴＰリクエスト（ステップＳ２０１）に基づき、ウェブブラウザー１０１が古いタイプの（特定の）ウェブブラウザーであるか否かを判断する（ステップＳ２０２）。以下の処理は第１の実施形態と同じである。なお「送信元が情報処理装置１０内のウェブブラウザー１０１でない場合」として、送信元が他の情報処理装置（例えば、パーソナルコンピューター）内のウェブブラウザーである場合が、一例として挙げられる。
【００５６】
ＩＩＩ．結語
【００５７】
典型的に、ウェブブラウザーが表示部に画面を表示するには、画面表示ＨＴＴＰリクエストをウェブサーバーに送信し、ウェブサーバーは、画面に表示すべき画像のリンク情報を含むＨＴＭＬデータを生成し、ＨＴＭＬデータを含むＨＴＴＰレスポンスをウェブブラウザーに返信する。典型的に、ＨＴＭＬデータは、表示すべき画像（アイコン画像、写真画像など）それぞれのリンク情報が含まれる。ウェブブラウザーは、リンク情報ごとに、画像データ取得ＨＴＴＰリクエストをウェブブラウザーに送信し、ウェブブラウザーから画像データを受信する。この方法では、ＨＴＭＬデータに含まれるリンク情報の数が多ければ、画像データ取得ＨＴＴＰリクエスト及び画像データを送信する回数が多い。従って、画面の表示に掛かる時間が長くなる（パフォーマンスが悪くなる）おそれがある。パフォーマンスを上げるには、以下の２つの方法が知られている。
【００５８】
(１)ウェブサーバーは、画面に表示すべき画像をエンコード（典型的には、ＢＡＳＥ６４エンコード）したデータを含むＨＴＭＬデータを生成し、ＨＴＭＬデータを含むＨＴＴＰレスポンスをウェブラウザーに送信する。ウェブブラウザーは、ＨＴＭＬデータに含まれるエンコードされた画像のデータをデコードし、デコードした画像を含む画面を表示する。
【００５９】
（２）ウェブサーバーは、画面に表示すべき複数の画像をまとめた１つの画像を生成する。ウェブサーバーは、この１つの画像のリンク情報を含むＨＴＭＬデータを生成し、ＨＴＭＬデータを含むＨＴＴＰレスポンスをウェブラウザーに送信する。ウェブブラウザーは、この１つの画像のリンク情報を含む画像データ取得ＨＴＴＰリクエストをウェブブラウザーに送信し、ウェブブラウザーからこの１つの画像データを受信する。ウェブブラウザーは、１つの画像データを複数の画像に分割する。ウェブブラウザーは、ＨＴＭＬデータに、全ての分割した画像のデータを埋め込むことにより、この画像を含む画面を表示する。
【００６０】
(１)の技術では、古いタイプのウェブブラウザーによっては、ＨＴＭＬデータに含まれるエンコードされた画像のデータをデコードし、デコードした画像を含む画面を表示することができない。
【００６１】
(２)の技術では、画面に表示すべき複数の画像のうち、少なくとも一部の画像が変更されたり、画像のサイズが変更された場合、変更後の複数の画像をまとめた１つの画像を生成するのに手間が掛かる。
【００６２】
これに対して、本実施形態によれば、ウェブサーバー１０２は、画面表示ＨＴＴＰリクエストに基づき、ウェブブラウザー１０１が特定のウェブブラウザーであるか否かを判断し、ウェブブラウザー１０１が特定のウェブブラウザーでないと判断すると、画面に表示すべき画像をエンコードしたデータを含む第１のＨＴＭＬデータを生成し、第１のＨＴＭＬデータを含む第１のＨＴＴＰレスポンスを生成し、ウェブブラウザー１０１が特定のウェブブラウザーであると判断すると、画像のリンク情報を含む第２のＨＴＭＬデータを生成し、第２のＨＴＭＬデータを含む第２のＨＴＴＰレスポンスを生成し、ウェブブラウザー１０１に、第１のＨＴＴＰレスポンス又は第２のＨＴＴＰレスポンスを返信する。
【００６３】
これにより、ウェブアプリケーションは何種類ものウェブブラウザー１０１で使用されることがあるが、特定のウェブブラウザーであるか否かに拘わらず、ウェブブラウザー１０１は、確実に、第１のＨＴＴＰレスポンス又は第２のＨＴＴＰレスポンスに基づき画面を表示することができ、互換性が担保される。また、ウェブブラウザー１０１が特定のウェブブラウザーでない場合は、画像をエンコードしたデータを含む第１のＨＴＭＬデータを生成するので、通信回数が少なくて済み、画面の表示に掛かる時間を短縮する（パフォーマンスを上げる）ことができる。
【００６４】
本実施形態によれば、ウェブサーバー１０２は、画面表示ＨＴＴＰリクエストのユーザーエージェントヘッダーに、特定のブラウザー名及び特定のバージョンが記述されている場合、ウェブブラウザー１０１が特定のウェブブラウザーであると判断する。
【００６５】
これにより、ウェブサーバー１０２は、何種類もの情報処理装置のウェブブラウザー１０１が特定のバージョンであるか否かを記憶しておく必要が無い。さらに、新しい機種の情報処理装置のウェブブラウザー１０１からの画面表示ＨＴＴＰリクエストを受信した場合、画面表示ＨＴＴＰリクエストのユーザーエージェントヘッダーに基づき、そのウェブブラウザー１０１が特定のウェブブラウザーか否か判断できる。このため、新しい機種の情報処理装置がリリースされた場合も、ウェブアプリケーションを変更する必要も無く、互換性が担保される。
【００６６】
本実施形態によれば、画面表示ＨＴＴＰリクエストの送信元が、情報処理装置１０内のウェブブラウザー１０１であり、ウェブブラウザー１０１が特定のウェブブラウザーであるか否かが判断済みである場合、判断済みである特定のウェブブラウザーであるか否かに応じた第１のＨＴＭＬデータ又は第２のＨＴＭＬデータを生成する。
【００６７】
これにより、ウェブサーバー１０２が、画面表示ＨＴＴＰリクエストに基づき、ウェブブラウザー１０１が特定のウェブブラウザーであるか否かを判断する必要が無い。このため、画面の表示に掛かる時間を益々短縮する（パフォーマンスを上げる）ことができる。
【００６８】
本技術の各実施形態及び各変形例について上に説明したが、本技術は上述の実施形態にのみ限定されるものではなく、本技術の要旨を逸脱しない範囲内において種々変更を加え得ることは勿論である。
【符号の説明】
【００６９】
情報処理装置１０
ウェブブラウザー１０１
ウェブサーバー１０２
【図１】
2020047148.tif 000003
【図２】
2020047148.tif 000004
【図３】
2020047148.tif 000005
【図４】
2020047148.tif 000006
【図５】
2020047148.tif 000007