ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScript は本当にサーバーに ping を送信できますか?
今日のペースの速い Web 環境では、ユーザーの満足度と生産性を維持するには、リモート サーバーがオンラインであることを確認することが重要です。コマンド ラインからサーバーに ping を実行することは確立された手法ですが、Web アプリケーションのページの読み込みが大幅に遅くなる可能性があります。この課題に対処するために、開発者は、JavaScript から直接サーバーに ping を送信する可能性など、代替ソリューションを模索してきました。
JavaScript はサーバーに ping を送信できますか?
答えは次のとおりです。はい、と響き渡ります。 JavaScript は主にクライアント側の対話用に設計されていますが、その機能を活用してリモート サーバーのステータスを調査する革新的な方法があります。そのような手法の 1 つは、ネイティブ Image オブジェクトの使用を伴います。
Image-Based Pinging
Image オブジェクトを作成し、そのソースをサーバーの IP アドレスに設定することで、開発者はブラウザが指定された場所から画像をロードしようとするという事実を悪用する可能性があります。成功すると、イメージの onload イベントがトリガーされ、サーバーがオンラインであることが示されます。逆に、ブラウザが画像をロードしようとしているときにエラーが発生した場合は、onerror イベントが呼び出され、サーバーがオフラインである可能性があることを通知します。
実装
以下JavaScript 関数は、画像ベースの ping の基本機能を示しています。
function Pinger_ping(ip, callback) { var _that = this; this.img = new Image(); this.img.onload = function() {_that.good();}; this.img.onerror = function() {_that.good();}; this.img.src = "http://" + ip; this.timer = setTimeout(function() { _that.bad();}, 1500); }
この例では、タイムアウトは、ブラウザが画像をロードするのに 1500 ミリ秒以上かかる場合を処理するために実装されています。
制限事項と今後の展開
一方、画像ベースの ping は実現可能なソリューションを提供します。 JavaScript からサーバーの可用性を確認する場合、普遍的に信頼できるものではないことに注意することが重要です。ブラウザ テクノロジとセキュリティ プロトコルの一部の更新により、場合によってはこの手法の有効性に影響が生じています。
それにもかかわらず、進行中の研究開発努力は、JavaScript からサーバーに ping を送信するための代替ソリューションを見つけることに専念しています。これらの方法論が進化するにつれて、画像ベースの ping の制限が解決され、Web アプリケーションでさらにシームレスで信頼性の高いサーバー監視機能が可能になることが予想されます。
以上がJavaScript は本当にサーバーに ping を送信できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。