XMLHttpRequest類
有很多方式可以發送http請求,相比調用$.get(),使用XMLHttpRequest類有個好處是可以設置header,並可以設置發送的body。
// Javascript code
function saveAndShowArticle() {
var xhr = new XMLHttpRequest();
xhr.open("POST", "/rest/article", true);
xhr.setRequestHeader("Content-type", "application/json");
xhr.onreadystatechange = function() {
if (xhr.readyState == 4) {
if (xhr.status == 200) {
// show article after get from server
var article = JSON.parse(xhr.responseText);
window.location.href = "/article/" + article.id;
}
}
};
// costruct a json
var articleJson = {};
// $("#title").val() get value from element with "title" as id
articleJson.title = $("#title").val();
articleJson.markDown = $("#content_markdown").val();
articleJson.categoryName = $("#category").val();
articleJson.tags = $("#tags").val();
articleJson.digest = $("#digest").val();
// send post request with json
xhr.send(JSON.stringify(articleJson));
}