axios 실현 원리

1339 단어 Javascript
axios 원 리 는 역시 XML HttpRequest, 따라서 ajax 를 실현 해 야 합 니 다. 
  •  아직 필요 하지만 promise 대상 이 결 과 를 처리 할 것 입 니 다

  • get 요청 을 예 로 들 어 axios 를 실현 합 니 다.
    ajax 의 get 요청 실현
    var Ajax={
            get: function(url, fn) {
                // XMLHttpRequest               
                var xhr = new XMLHttpRequest();
                xhr.open('GET', url, true);
                xhr.onreadystatechange = function() {
                    // readyState == 4       
                    if (xhr.readyState == 4 && xhr.status == 200) {
                        //         
                        fn.call(this, xhr.responseText);
                    }
                };
                xhr.send();
            }
        }
    
    

    Ajax 를 밀봉 하여 Axios 를 실현 하여 리 셋 합 니 다.
    var Axios = {
            get: function(url) {
                return new Promise((resolve, reject) => {
                    var xhr = new XMLHttpRequest();
                    xhr.open('GET', url, true);
                    xhr.onreadystatechange = function() {
                        // readyState == 4       
                        if (xhr.readyState == 4 && xhr.status == 200) {
                            //         
                            resolve(xhr.responseText)
                        }
                    };
                    xhr.send();
                })
            },
        }

    좋은 웹페이지 즐겨찾기