[JS]AJaxとfetch API
5525 ワード
Ajax
なぜAjaxを使うのですか?
ページが変更されるたびにすべてのコンテンツをダウンロードするのは効果的ではありません.Ajaxは、すべてのページをダウンロードする必要がなく、変更された部分に注目するだけで、Webページの一部を更新するのに役立つテクノロジーです.これにより、より高い可用性が得られ、サーバおよびWebブラウザを使用するユーザーの時間、リソース、お金、およびネットワークリソースが節約されます.これが私たちがAjaxを勉強している理由です.
Ajaxでは、動的にAjaxを使用して管理することもできます.index.html
という基本構造を再使用して、変更可能な部分と変更できない部分を分離するだけです.これは巨大な生産力の向上をもたらす.
fetch API
Ajaxを実装するには様々な方法があるが、その中で最新の技術はfetch APIである.fetch APIの原理を知る必要はなく、使い方を知るだけでAjaxを十分に使えるので、使い方を熟知して原理を理解する順番で学ぶのも良いです.
fetch APIのリクエストと応答
1. fetch
fetch関数は、サーバに最初のパラメータとして渡されるデータを要求します. <input type="button" value="fetch" onclick="
fetch('javascript')
">
2. then
サーバは、適切なデータを取り出して応答するのに時間がかかる場合があります.その間、他のことをするために用意された機能はthen
です.
例えば、fetch APIが応答終了時にcabllbackme
関数を実行する場合、次のコードについて. <input type="button" value="fetch" onclick="
function callbackme() {
console.log('response end');
}
fetch('html').then(callbackme);
">
コードが次のように表示されている場合、console.ログ・コードが実行中で、Webブラウザが応答を受信した場合は、cabllbackme
関数を実行します.これは、fetch APIの実行中に、次のコマンドが実行され、非同期で実行されることを意味します. function callbackme() {
console.log('response end');
}
fetch('html').then(callbackme);
console.log(1);
console.log(2);
console.log(3);
3. response
fetch APIの使用方法を確認すると、パラメータがthen
のコールバック関数を使用すると、fetch APIの実行時にオブジェクトresponse
が関数の最初のパラメータの値として使用されることがわかります.
responseという名前のオブジェクトデータには、fetchによって要求が発行されたときにWebサーバが応答した結果が含まれます. <input type="button" value="fetch" onclick="
fetch('html').then(function(response) {
console.log(response);
});
console.log(1);
console.log(2);
">
上記のコードを実行してコンソールウィンドウのレスポンスオブジェクトを表示すると、レスポンスの複数のプロパティ値status:200を表示できます.
WebブラウザがWebサーバと通信すると、Webサーバが応答してファイルが正常に検索されると、応答時に200に通知される.つまり200は成功を意味する.失敗すると、404が投げ出される.404は、見つからないことを意味する.
これは次のコードと似ています. <input type="button" value="fetch" onclick="
fetch('javascript').then(function(response) {
if(response.status=='404') {
alert('Not found')
}
});
">
Reference
この問題について([JS]AJaxとfetch API), 我々は、より多くの情報をここで見つけました
https://velog.io/@0seo8/220321-AJax과-fetch-API
テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol
<input type="button" value="fetch" onclick="
fetch('javascript')
">
<input type="button" value="fetch" onclick="
function callbackme() {
console.log('response end');
}
fetch('html').then(callbackme);
">
function callbackme() {
console.log('response end');
}
fetch('html').then(callbackme);
console.log(1);
console.log(2);
console.log(3);
<input type="button" value="fetch" onclick="
fetch('html').then(function(response) {
console.log(response);
});
console.log(1);
console.log(2);
">
<input type="button" value="fetch" onclick="
fetch('javascript').then(function(response) {
if(response.status=='404') {
alert('Not found')
}
});
">
Reference
この問題について([JS]AJaxとfetch API), 我々は、より多くの情報をここで見つけました https://velog.io/@0seo8/220321-AJax과-fetch-APIテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol