JavaScript에서 POST 요청을 통해 JSON 형식의 값을 받아 온 다음에 다른 JavaScript 함수가 실행됬어야 했던 문제
JavaScript 비동기는 처음 해보는지라 구글링을 통해 헤매다가 해결
POST 요청 JavaScript
function post_api(){
var xhttp = new XMLHttpRequest();
var url = "URL";
return new Promise((resolve, reject) => {
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
var jsonObj = JSON.parse(this.responseText);
// 성공
resolve("성공");
// 실패
//resolve("실패");
}
};
xhttp.open("POST", url, true);
xhttp.setRequestHeader("Content-type", "application/json");
// POST 요청 JSON
var request_data = JSON.stringify({"key" : value});
xhttp.send(request_data);
});
}
POST 요청 후 실행 JavaScript
<script>
function print_result(result){
console.log(result);
}
post_api().then(resolve_result =>{
print_result(resolve_result);
}
</script>
추후 JavaScript 공부 후 에러가 발생한 이유에 대해 고민 할 것