Ajax

서현서현·2022년 7월 19일
0

Spring

목록 보기
11/31
post-thumbnail
$.ajax({
  type:'post',
  url:'/replies/',
  headers: { 
    "Content-Type": "application/json",
    "X-HTTP-Method-Override": "POST" },
  dataType:'text',
  data: JSON.stringify({bno:bno, replyer:replyer, replytext:replytext}),
  success:function(result){
    console.log("result: " + result);
    if(result == 'success'){
      alert("등록 되었습니다.");
      replyPage = 1;
      getPage("/replies/"+bno+"/"+replyPage );
      replyerObj.val("");
      replytextObj.val("");
    }
  }});

댓글처리하면서 Ajax를 많이 썼는데 위 코드를 보면서... 헤더엔 json이 있는데 dataType은 text???? data는 또 JSON으로 감싸>???? 이해가 안돼서 한번 짚고가려고 한다.

$.ajax ({
  // URL은 필수 요소이므로 반드시 구현해야 하는 Property입니다.
  url	: "url", // 요청이 전송될 URL 주소
  type	: "GET", // http 요청 방식 (default: ‘GET’)
  async : true,  // 요청 시 동기화 여부. 기본은 비동기(asynchronous) 요청 (default: true)
  cache : true,  // 캐시 여부
  timeout : 3000, // 요청 제한 시간 안에 완료되지 않으면 요청을 취소하거나 error 콜백을 호출.(단위: ms)
  data  : {key : value}, // 요청 시 포함되어질 데이터
  processData : true, // 데이터를 컨텐트 타입에 맞게 변환 여부
  contentType : "application/json", // 요청 컨텐트 타입 
  dataType    : "json", // 응답 데이터 형식 (명시하지 않을 경우 자동으로 추측)
  beforeSend  : function () {
    // XHR Header를 포함해서 HTTP Request를 하기전에 호출됩니다.
  },
  success : function(data, status, xhr) {
    // 정상적으로 응답 받았을 경우에는 success 콜백이 호출되게 됩니다.
    // 이 콜백 함수의 파라미터에서는 응답 바디, 응답 코드 그리고 XHR 헤더를 확인할 수 있습니다.
  },
  error	: function(xhr, status, error) {
        // 응답을 받지 못하였다거나 정상적인 응답이지만 데이터 형식을 확인할 수 없기 때문에 
        // error 콜백이 호출될 수 있습니다.
        // 예를 들어, dataType을 지정해서 응답 받을 데이터 형식을 지정하였지만,
        // 서버에서는 다른 데이터형식으로 응답하면  error 콜백이 호출되게 됩니다.
  },
  complete : function(xhr, status) {
    // success와 error 콜백이 호출된 후에 반드시 호출됩니다.
    // try - catch - finally의 finally 구문과 동일합니다.
  }
});

즉... type으로 요청방식 정하고. 어디로 보낼지 즉 요청을 전송할 url 쓰고,

header...엥 헤더가 없네 혀튼 Content-Type 이런건 요청 컨텐츠타입. 그니까 json으로 보내는거인듯

data는 요청할때 포함되는 데이터이고, dataType은 응답데이터의 형식이다.

success는 정상적으로 응답되었을때 자동으로 호출되는 콜백. 이곳의 파라미터는 응답바디, 응답코드, XHR 헤더를 확인할 수 있다고 한다.

0개의 댓글