jQuery.aax 대신 슈퍼 에이전트 사용하기

9811 단어 jQueryJavaScript

탈jQuery


AngularJS 또는 Vuejs에서는 DOM을 직접 조작하는 것을 권장하지 않습니다.
그러면 jQuery는 AJAX에서만 사용됩니다.
그렇다면 AJAX 전용 라이브러리에 맡기고 jQuery 의존을 없애고 싶습니다.
따라서 AJAX만 하는 라이브러리로서 SuperAgent를 가져옵니다.

SuperAgent


는 HTTP 요청에 특화된 라이브러리입니다.
Node.js와 브라우저는 모두 사용할 수 있습니다.
저자는 Express, Stylus 등을 개발하기로 유명한 TJ입니다.

슈퍼 에이전트의 장점


귀여워요. 브라우저에 배포하는 방법 먼저 다음 URL, 파일 이름 superagent에 액세스합니다.js로 이름을 지정하고 저장하십시오. https://wzrd.in/standalone/superagent@latest
script 태그superagent.js를 HTML에 로드한 후 다음 코드를 삽입합니다.
var request = window.superagent;

Node.어떻게 js에 배치합니까


보통 리퀴어하면 돼요.
var request = require('superagent');

GET


확장성이 가장 높은 방법으로 사슬로 쓰다.

솔직한 GET

request
  .get(url)
  .end(function(err, res){
    console.log(res.text);//レスポンス
    //レスポンスがJSONの場合 
    console.log(res.body);//ここにparse済みのオブジェクトが入る
  });

질의 매개변수 GET
request
  .get(url)
  .query({user: "Taro"})
  .end(function(err, res){
    console.log(res.body);
  });

만약 당신이 연쇄적인 스타일을 좋아하지 않는다면, 아래와 같이 쓸 수도 있다.
request
  .get(url, function(err, res){
    if (err) throw err;
    console.log(res.text);
  })

POST


간단한 전원 켜기 자체 검사

request
  .post(url)
  .send({name: name, text: text})
  .end(function(err, res){
    console.log(res.body);
  });

x-www-form-urlencoded

request
  .post(url)
  .type('form')
  .send({name: name, text: text})
  .end(function(err, res){
    console.log(res.body);
  });

기타


물론 PUT, DELETE도 가능합니다.

PUT

request
  .put(url)
  .end(function(err, res){
    // ...
  });

DELETE

request
  .del(url)
  .end(function(err, res){
    // ...
  });

견본


위 코드의 동작 검사는 아래 자료 라이브러리에서 진행됩니다.문제가 있으면 신청하세요.
https://github.com/hashrock-sandbox/superagent-example

참고 자료


다른 선택 "Fetch API"


슈퍼 에이전트는 유용하지만 향후 웹 표준화(Extensible Web)의 발전을 고려하여
whatwg에서 논의되는 Fetch API를 사용하는 것이 좋습니다.
Fetch API에 대한 자세한 내용은 아래 웹 사이트를 참조하십시오.
Fetch API 설명 또는 웹의 "Fetch"는 무엇입니까? -Block Rockin’ Codes
Fetch API 작성 중이지만 polyfill 제공
지금도 슈퍼 에이전트와 마찬가지로 사용할 수 있다.
예를 들어, GET의 경우 다음과 같이 사용됩니다.
require("whatwg-fetch");
fetch(url)
    .then(function(res){
        return res.text();
    }).then(function(text){
        console.log(text);
    });

추가 설명: Fetch API 사용 시 고려 사항


Fetch API를 사용할 때는 "자동으로 쿠키를 보내지 않습니다"라는 점에 유의해야 합니다.자세한 내용은 다음 문서를 참조하십시오.

추가 옵션


Promise 기반 axios 라이브러리가 점점 더 화제가 되고 있습니다.자세한 내용은 아래의 보도를 참조하십시오.
슈퍼에이전트와 axios의 구분 - Qiita

좋은 웹페이지 즐겨찾기