JSON 与 HTTP

使用curl工具發起一個數據格式爲JSON類型的HTTP請求:

$ curl -X POST https://service.com/apps \
    -H "Content-Type: application/json" \
    -d '{"name": "tom"}'

{
  "id": "222",
  "name": "test",
  "owner": {
    "email": "example@google.com",
    "id": "111"
  },
}

使用 xmlHttpRequest 接口发起一个JSON类型的HTTP请求

var xhr = new XMLHttpRequest();
//使用HTTP POST请求与服务器交互数据
xhr.open("POST", "/captcha", true);
//设置发送数据的请求格式
xhr.setRequestHeader('content-type', 'application/json');
xhr.onreadystatechange = function() {
    if (xhr.readyState == 4) {
    //根据服务器的响应内容格式处理响应结果
    if(xhr.getResponseHeader('content-type')==='application/json'){
        var result = JSON.parse(xhr.responseText);
        //根据返回结果判断验证码是否正确
        if(result.code===-1){
            alert('验证码错误');
        } else {
            console.log(xhr.responseText);
        }
    }
}
var sendData = {captcha:this.value};
//将用户输入值序列化成字符串
xhr.send(JSON.stringify(sendData));