[Javascript] fetch (ajax)
function doFetch(url, data, method) {
var option = {
method: method,
mode: 'same-origin', //default: same-origin
credentials: 'same-origin', //default: omit
cache: 'no-cache', //default: default
redirect: 'follow', //default: follow
referrer: 'client', //default: client
headers: new Headers(),
}
if( method =="POST" ){
option.body = _data;
}
option.headers.append('Content-Type', "application/x-www-form-urlencoded; charset=UTF-8");
var token = $("meta[name='csrf-token']").attr("content");
option.headers.append('X-CSRF-TOKEN', token);
return fetch(url, option );
}
//========================================
doFetch('/ajax/api1.php', JSON.stringify({name: 'qasd'}), 'POST')
.then(ret => {
ret.json().then( json =>{
console.log('ret=', json );
})
})
.catch(ret => {
console.log('catch=', ret);
});
//===================
// 실행시간(속도)
XMLHttpRequest, fetch, jQuery($.ajax) 모두 30ms 정도로 걸리는 시간은 차이가 없음
//===================
// 참고
https://developer.mozilla.org/ko/docs/Web/API/Fetch_API/Fetch%EC%9D%98_%EC%82%AC%EC%9A%A9%EB%B2%95
//