Javascript가 서버에 Ping을 수행할 수 있나요?
웹 애플리케이션을 생성할 때 외부 서버의 가용성을 확인하는 것이 필요합니다. 서버 측 스크립트는 "ping"과 같은 명령을 사용하여 이 작업을 쉽게 수행할 수 있지만 이 영역에서 Javascript의 기능은 제한적이었습니다.
그러나 기본 이미지 개체를 활용하는 독창적인 방법이 등장했습니다. 대상 서버에서 이미지를 로드함으로써 Javascript는 리소스를 가져오는 내장 메커니즘을 활용하여 서버 가용성을 확인할 수 있습니다.
구현
다음 코드 스니펫은 핑 실행을 위한 기본 함수:
function Pinger_ping(ip, callback) { if(!this.inUse) { this.inUse = true; this.callback = callback this.ip = ip; var _that = this; this.img = new Image(); this.img.onload = function() {_that.good();}; this.img.onerror = function() {_that.good();}; this.start = new Date().getTime(); this.img.src = "http://" + ip; this.timer = setTimeout(function() { _that.bad();}, 1500); } }
이 함수는 이미지 개체를 생성하고 핑에 대한 리스너를 설정합니다. "onload" 및 "onerror" 이벤트. 그런 다음 대상 서버에서 이미지가 로드되고 서버가 응답하지 않는 경우를 처리하기 위해 시간 초과가 설정됩니다. 결과에 따라 "good()" 또는 "bad()" 메소드가 호출되어 서버 가용성을 나타냅니다.
이점
이 기술은 다음과 같은 몇 가지 장점을 제공합니다.
업데이트
제시된 솔루션은 최신 브라우저와 호환성 문제가 발생할 수 있습니다. 최신 업데이트 및 대체 솔루션을 보려면 포함된 GitHub 저장소를 참조하세요.
[https://github.com/jdfreder/pingjs](https://github.com/jdfreder/pingjs)
위 내용은 외부 라이브러리를 사용하지 않고 JavaScript로 서버를 핑할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!