๋ณธ๋ฌธ์œผ๋กœ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๋ฐ˜์‘ํ˜•

jQuery์—์„œ $.getJSON๊ณผ $.ajax ๋น„๊ต ์ •๋ฆฌ

์›น ๊ฐœ๋ฐœ์„ ํ•˜๋‹ค ๋ณด๋ฉด ์„œ๋ฒ„์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์˜ฌ ๋•Œ jQuery์˜ Ajax ๊ธฐ๋Šฅ์„ ์ž์ฃผ ์‚ฌ์šฉํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

์ด๋•Œ ๊ฐ€์žฅ ๋งŽ์ด ์“ฐ์ด๋Š” ๊ฒƒ์ด ๋ฐ”๋กœ $.ajax์™€ ๊ทธ ์ถ•์•ฝ ๋ฒ„์ „์ธ $.getJSON์ด์—์š”.

๋‘ ๋ฉ”์„œ๋“œ๋Š” ๋น„์Šทํ•ด ๋ณด์ด์ง€๋งŒ ์“ฐ์ž„์ƒˆ์™€ ์˜ต์…˜ ๋ฒ”์œ„์—์„œ ์ฐจ์ด๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.


1. $.getJSON

$.getJSON('/geoserver/wfs', { param1: 'A', param2: 'B' })
  .done(function(data) {
      console.log("์„ฑ๊ณต", data);
  })
  .fail(function() {
      console.log("์‹คํŒจ");
  })
  .always(function() {
      console.log("๋ฌด์กฐ๊ฑด ์‹คํ–‰");
  });

 

  • ๊ธฐ๋ณธ์ ์œผ๋กœ GET ์š”์ฒญ๋งŒ ๊ฐ€๋Šฅ.
  • ์‘๋‹ต์„ ๋ฌด์กฐ๊ฑด JSON์œผ๋กœ ํŒŒ์‹ฑํ•ด์คŒ.
  • ๊ฐ„๋‹จํ•˜๊ฒŒ WFS/REST API JSON ํ˜ธ์ถœํ•  ๋•Œ ์œ ์šฉ.

๋‚ด๋ถ€์ ์œผ๋กœ๋Š” $.ajax์— type: "GET", dataType: "json"์„ ๋„ฃ์€ ๊ฒƒ๊ณผ ๋™์ผ


2. $.ajax

$.ajax({
    url: '/geoserver/wfs',
    method: 'GET',         // GET, POST, PUT ๋“ฑ ๋‹ค ๊ฐ€๋Šฅ
    dataType: 'json',      // ์‘๋‹ต ํƒ€์ž…(json, xml, text ๋“ฑ)
    data: { param1: 'A', param2: 'B' },
    success: function(data) {
        console.log("์„ฑ๊ณต", data);
    },
    error: function(xhr, status, error) {
        console.log("์‹คํŒจ", status, error);
    },
    complete: function(xhr, status) {
        console.log("๋ฌด์กฐ๊ฑด ์‹คํ–‰", status);
    }
});

 

 

  • HTTP ๋ฉ”์„œ๋“œ(GET, POST, PUT, DELETE ๋“ฑ) ๋‹ค ์ง€์›.
  • dataType, contentType, headers, timeout ๊ฐ™์€ ์„ธ๋ถ€ ์˜ต์…˜ ์กฐ์ ˆ ๊ฐ€๋Šฅ.
  • success, error, complete ๊ฐ™์€ ์ฝœ๋ฐฑ ๋ฐฉ์‹ ์ œ๊ณต.
  • .done/.fail/.always ๊ฐ™์€ Promise ๋ฐฉ์‹๋„ ๊ฐ€๋Šฅ ($.ajax(...).done(...)).

 

3. ๋น„๊ต ์š”์•ฝ

๊ตฌ๋ถ„ $.getJSON $.ajax
์š”์ฒญ ๋ฐฉ์‹ GET๋งŒ ๊ฐ€๋Šฅ GET, POST, PUT, DELETE๋“ฑ ๊ฐ€๋Šฅ
์‘๋‹ต ์ฒ˜๋ฆฌ JSON๋งŒ ์ž๋™ ํŒŒ์‹ฑ json, xml, text๋“ฑ ์ง€์ • ๊ฐ€๋Šฅ
์ฝ”๋“œ ๊ฐ„๊ฒฐ์„ฑ ๋‹จ์ˆœ JSON GET์—๋Š” ์งง๊ณ  ํŽธ๋ฆฌ ์˜ต์…˜ ๋งŽ์•„์„œ ๊ธธ์ง€๋งŒ ์œ ์—ฐ
์ฝœ๋ฐฑ/์ฒด์ด๋‹ done, fail, always success, error, complete + ์ฒด์ด๋‹ ๊ฐ€๋Šฅ
๋‚ด๋ถ€ ๋™์ž‘ $.ajax์˜ ์ถ•์•ฝํ˜• ํ’€ ์˜ต์…˜ ์ œ์–ด ๊ฐ€๋Šฅ

 

 

4. ์ •๋ฆฌ

  • ๋‹จ์ˆœํžˆ JSON GET ์š”์ฒญ๋งŒ ํ•œ๋‹ค → $.getJSON
  • POST ์š”์ฒญ, ๋‹ค๋ฅธ ์‘๋‹ต ํƒ€์ž…, ํ—ค๋”/ํƒ€์ž„์•„์›ƒ ๋“ฑ ์˜ต์…˜์ด ํ•„์š”ํ•˜๋‹ค → $.ajax

์ฆ‰, ์ƒํ™ฉ์— ๋”ฐ๋ผ ์ ์ ˆํžˆ ์„ ํƒํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. ๊ฐ„๋‹จํžˆ ์“ธ ๋• $.getJSON, ๋ณต์žกํ•˜๊ฒŒ ์ œ์–ดํ•  ๋• $.ajax๊ฐ€ ์ •๋‹ต์ด์—์š”.

๋ฐ˜์‘ํ˜•