- ベストアンサー
Ajaxを用いた画像検索インタフェースの利点って???
現在Ajaxを用いた画像検索インタフェースの作成をしています。 最初は「ページ遷移なしでデータが表示できる」ぐらいの感覚で作成していましたが、 最近、本当にそれだけなのかと思い始めてしまいました。 そこで質問です。 画像検索インタフェースとして、Ajaxを用いて開発する利点はいったいどこにあるのでしょう? Ajaxの最大の利点として「サーバとの非同期通信が実現できる」ことはわかります。 すなわち、「ユーザがどのタイミングでサーバとの通信をできるか設定できる」ってことなんでしょうか? よくわかりません。 お力添えをお願いいたします。
- Kuroichi01
- お礼率56% (60/106)
- AJAX
- 回答数2
- ありがとう数12
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
>Ajaxを用いて開発する利点 ・最小限のデータのやり取りで目的の結果を表示できます ・データを最小化できなくても、変遷がないことでユーザーにとって 処理が高速におこなわれていると思わせる心理的な効果が期待できます
その他の回答 (1)
- t_netbug
- ベストアンサー率34% (15/44)
利点がわからないものをわざわざ使う必要があるんでしょうか?
お礼
大学教授に「やれ」と言われたので、やらないと卒業できないんッス。
関連するQ&A
- AJAXの質問
これからAjaxに挑戦しようとするプログラマーです。 Ajaxの基本的なことについて教えてください。 私は某メーカーの情報システム課員です。 近年は情報の一元化を推進ということで、社内のインフラを整備するため様々な案件を進めてきました。 案件によりACCESSなどですませる場合もありますが、 基本的な開発環境は以下の環境です。 ○ASP(VBScript) ○Oracle 別にプログラムに自信があるわけではありませんが、 案件をこなすうちにVBScriptやJavascriptも納得いく程度書けるようになりました。 そこで次の案件では、JQueryとAjaxを用いた開発に挑戦したいと思っております。 一番やりたいことは、Ajaxの利点であるサーバーとの非同期通信です。 AjaxではXML文書を非同期にやりとりするようですが、やりたいことはOracleのデータを非同期にやりとりしたいです。 このようなことは可能なのでしょうか?
- ベストアンサー
- AJAX
- jqueryMobileがAjax?
Ajaxという単語の意味がわからなくなりました… jqueryMobileの様々な解説をみているとページ切り替え時とかにAjaxによってとかいう表現が出てきますが、jqueryMobileは既にサーバーから取得したHTMLをjavascriptで表示切り替えしてるだけで、各ページの情報を適宜サーバーから取得しているというわけじゃないと思います。 Ajaxの定義はjavascriptを用いてページ遷移をすることなくサーバーと通信すること、と思っていたので、このjqueryMobileのAjaxという単語の使い方に違和感を覚えます。 jqueryMobileの解説でのAjaxって単語の使われ方は正しいんでしょうか? それともjqueryMobileは実際はクライアントサイドでの表示切り替えだけでなくサーバーとの通信を行ってるんでしょうか? 参考 http://dev.screw-axis.com/doc/jquery_mobile/components/pages_dialogs/page_links/
- ベストアンサー
- JavaScript
- Ajaxの動き
googleと本で調べたのですが、今いちわからないため質問させてください。 (1)教科書から、Ajaxは、XMLをJavascriptでやり取りしている非同期通信という定義なのはわかりましたが、結局、AJAXを使うということは、HTMLに、<Script>のタグで、JQueryなどのパスを書くということなのでしょうか? AJAXは概念的なものであって、プログラムやモジュールそのものではないと捉えています。 (2)Ajaxによる非同期通信は、何をきっかけとして通信が始まるのでしょうか? 通常は、FORMがSUBMITされたときに、サーバにリクエストがいくという認識ですが そもそも、Ajaxは、何をイベントとしてハンドルしているのでしょうか?(何をきっかけに処理が始まっているのでしょうか?) HTMLに、<Script>のタグで、JQueryのパスを書くと、ハンドルする機能が使用されるのでしょうか? Ajaxでも「リクエスト」は行われているけれども、処理結果として戻されるものがXML形式であるだけだという理解で良いのでしょうか?
- ベストアンサー
- AJAX
- AjaxとJava
私はAjaxの勉強をしようと思っています。 そのため、簡単なサーバ側はJavaのアプリケーションを作って学ぼうと思ったのですが、どうやって通信すればよいかよくわかりません。 一応わからないなりにいろいろ方法を考えてみたのですが、どれも疑問点があります。 (1)、サーバをJavaで作成して、Ajaxと通信する方法 (2)、JSPを使って、Ajaxと通信する方法 どちらの方法も、 (1)どうやってAjaxからの(正確にはJavaScriptからの)リクエストを受け取って、値を取り出したらいいか (2)どうやってサーバからJavaScriptにデータを送るのか がわかりません(送るパケットは極めてシンプルなもの、たとえば数字とか文字列がいいです)。 入門サイトはほとんどのサーバ側はPHPで作っているので、あまり参考にならないと考えています。 なにか参考になるようなサイトなどはないでしょうか? お返事お待ちしております。
- ベストアンサー
- JavaScript
- どこまでがAjaxなの?
現在、Ajaxを勉強中の初心者です。 質問のタイトル通りなのですが、どこまでがAjaxなのかイマイチわかりません。 AjaxはJavaScript + XMLで非同期通信をする技術ですが 1.画像やプログラムファイルをサーバPC側に入れておいてクライアントPC側でラジオボタンの選択によって画像表示を変えるのはAjaxですか、それともただのJavaScriptですか? 2.サーバを使って以下のような入力可能文字カウンタを表示させるのはAjaxですか、それともただのJavaScriptですか? <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/> <title>文字のカウント</title> </head> <body> <form> <textarea cols="46" rows="5" id="title1" name="title1" size="50"></textarea><br /> あと<span id="inputlength1">20</span>文字入力できます<br /> </form> <script type="text/javascript"><!-- function lengthCounter (node, max, cut) { max = max || Number (node.maxLength) || 20; return function () { var rest = max - node.value.length; if (rest < 0) { if (cut) { alert ('20文字以内にしてください'); rest = max; node.value = node.value.substring (0, max); } } return rest; }; } function dispValue (node, cbFunc) { return function () { node.firstChild.nodeValue = cbFunc (); }; } setInterval (dispValue ( document.getElementById ('inputlength1'), lengthCounter (document.getElementById ('title1'), 20, true)), 100); // --></script> </body> </html> 3.「googleサジェストのインクリメンタル検索にはAjaxの技術が利用されている」←ここでのAjaxにはPHPも含まれますか? 私はPHPをAjaxの枠には入れないような気がします。正確にはPHPとAjaxでインクリメンタル検索機能がつくられていると思うのですが。 4.PHPのみでAjaxと同じ非同期通信ができればそれはAjaxと呼ぶのか? よろしくお願いします。
- ベストアンサー
- AJAX
- ajaxの使いどころ
現在、会員制のWebサービスを作成しています。 まだ初期段階ですが、今は管理者用のユーザー管理ページに着手しており、サーバーサイド、クライアントサイド合わせて、およそ7割程度完成しているいるところです。 このページの現時点での実装では、ユーザーの削除、復活、パスワードリセット、登録情報の変更、新規ユーザーの登録といった全機能でajaxを使っています。 また、処理対象のユーザーは一覧のテーブルをクリックして選択するのですが、このクリック時にサーバーからユーザーの詳細情報を取得しており、ここでもajaxを使っています。 要するに、1ページ取得したあと、そのページ内でサーバーと通信を行う必要が生じたら、それはすべてajaxを使うという決まりです。 そこで、ajaxの運用についていくつかわからない点があり、質問させて頂きます。 (1) 会員専用ページという性質を考えると、ajaxでリクエストを送信した際にも、サーバーサイドではそのリクエストに対するセッションが有効かどうかをチェックする必要がありますよね? 一般的な会員向けWEBサービスでは、"ページ遷移毎"だけでなく、"ajaxでの通信毎"でもセッションのチェックを行うものなのでしょうか。 (2) ajaxでの通信時にセッションの有効性をチェックした結果、すでにタイムアウト等でセッションが無効な場合、一般的にはどうするべきなのでしょうか。 個人的にはlogoutページにリロードしたいと考えているのですが、このようにするには、サーバー側がレスポンスを返すときに、{error:{code:'1',message:'session_out'}}のようなJSONを返して、それをjavascript側で確認し、location.hrefを書き換える、というような流れで処理を行うことになるのでしょうか。 (3) そもそも、今回のように「1ページ内で生じるサーバー間通信は全てajaxで補う」という考え方は、一般的なものなのでしょうか。 なにが言いたいかというと、"セキュリティ等を考慮してajaxを使うべきではない処理"と"ajaxを積極的に使うべき処理"(もしくは、"ajaxを使っても差し支えない処理")の判断の仕方、つまり、ajaxの使いドコロがよく分かっていません。 以上3点につきまして、ご教授いただければ幸いです。
- ベストアンサー
- AJAX
- AjaxのOnFailureについて
Ajax(prototype.js)を使用しているのですが、OnFailureが呼び出されてしまいます。 プログラムの流れです。 ボタン押下(html) ↓ 前処理(js) ↓ サーバのファイル情報取得(ajax非同期通信→php→戻ってきて情報取得) ↓ 取得したファイル数ループ(js) ↓ ↑ 別のサーバにコピー(ajax非同期通信→php→戻り値判定) ↓ ループ抜けたら終了処理 大量のファイルを処理した場合、4~5経過したあたりで 「別のサーバにコピー(ajax非同期通信→php→戻り値判定)」 が正常に行われず、後処理として記述してあるOnFailureを呼び出してしまいます。 OnFailureについて調べてみたのですが、MSDNのAjaxOptions クラスに 「ページの更新が失敗した場合に呼び出される JavaScript 関数。 この関数は、応答ステータス 200 の範囲内にない場合に呼び出されます。」 と記述されていました。 応答ステータスとは何を指しているのでしょうか。 回避方法があれば教えてください。 よろしくお願い致します。
- 締切済み
- JavaScript
- JQueryはAJAXとは無関係??
質問◆JQueryおよびJQueryMobileは「AJAX」とは無関係なのでしょうか? 「JQueryMobileを使っているとき、DOMによってHTMLを動的に差し替えている」という認識なのですが、 特にRequest関連の記載をJavaScriptで記載していない限り、AJAXの処理は行われないのでしょうか? それとも、 JQuery Mobileを使っている場合は、ページ遷移などで、プログラマが意識していなくても(独自にプログラムを書いていなくても) AJAXの処理が行われているのでしょうか? /************************************/ サーバへのリクエストはなくても、1つのマシン内の、HTMLファイルとHTMLファイルの間で、 HTTPで通信がされるということはないと思っています。 (※基本、HTTPはクライアントとサーバの間のときしか使われないのですよね?) JQueryの技術情報のサイトを見ていると、 よく「document.ready」と書かれていたりするソースを見かけますが、 これはAjaxとは関係なく(通信とは関係なく)、 また「xhr.send」も書かれていないHTMLは、AJAXは使われないという理解です。 (「Form、submit」とも関係がない) XMLHttpRequestも「HttpRequest」とあるわけですし、 「Form、submit」を書いているときに行われるわけではないけれども、かわりに、 「xhr.send」とJavaScriptで実行されたタイミングで走る処理であり、 その際、「サーバから返される情報がXMLのデータ形式で(XML以外もですが、、)」だという理解なのですが、合っていますでしょうか?
- ベストアンサー
- AJAX
- AJAXとSEO。同期通信とPHP送信の違い
「AJAX」「SEO」「同期通信」「PHPでPOST送信」について、幾つか分からないことがあるので教えてください ■質問1 ・AJAX通信すると、SEO的に不利なのでしょうか? 例えば、AJAXでCSVファイルを読み込む場合はどうなるでしょうか? もしかして、実装方法による? 下記例で、何か違いはあるでしょうか? ・例1 … 非同期。ページ読込後にCSV読込(そもそもこの実装は可能?) ・例2 … 非同期。ページ読込前にCSV読込 ・例3 … 同期。ページ読込後にCSV読込 ・例4 … 同期。ページ読込前にCSV読込 ■質問2 ・AJAX通信で検索ボタンを押したページ結果は、クローラーされることはあるのでしょうか? サーバからデータを取得しているから反映される? 非同期だったら、反映されない? 同期だったらされる? ■質問3 ・AJAX通信の同期処理の意味が分かりません(jQueryのasyncをfalseなど)。非同期通信がAJAXだと思うのですが、AJAX通信の同期処理というのは、何なのでしょうか? 例えば、「PHPでPOST送信」するのと、原理的には全く同じということになるのでしょうか?(PHPで実装するか、js実装するかの違いだけ?) 最終的に、SEOを重視する場合は(非同期の操作性を捨て)同期処理で実装した方が良い、ということになるのでしょうか?
- ベストアンサー
- AJAX
お礼
ありがとうございます。 ゼミで発表しなければならなかったので助かりました。