Crowdfunding:HTTP

场景:提交表单更新数据

一、请求报文

1、请求行:

以及HTTP的版本,通常是1.1。

2、请求消息头

Content-Type图片中的是提交表单的类型,如果是发送Ajax请求,请求体就是一个json数据。

(1)表单请求体:application/x-www-form-urlencoded

(2)Ajax请求体:application/json;charset=UTF-8

//发送Ajax请求将adminIdArray发送给Handler方法
$.ajax({
    //服务端接收请求的URL地址
    "url": "admin/batch/remove.json",
    //设置请求方式
    "type": "post",
    //设置请求体内容类型,告诉服务器当前请求体发送的是JSON数据
    "contentType": "application/json;charset=UTF-8",
    //请求体发送给服务器的数据
    "data": JSON.stringify(adminIdArray),
    //把服务器端返回的数据当作JSON格式去解析
    "dataType": "json",
    //服务器处理请求成功后执行的函数,响应体以参数形式传入当前函数
    "success": function(response){

        var  result = response.result;

        if (result == "SUCCESS"){
            window.location.href=
                "admin/query/for/search.html?pageNum="+window.pageNum+"&keyword="+window.keyword;
    }

    if (result == "FAILED"){
      alert(response.message);
    return ;
}

这样提交的请求,handler方法接收数据需要使用@RequestBody注解:

(3)multipart/form-data:用于文件上传

<form action="xxx" method="post" enctype="multipart/form-data">

3、请求体

请求当前请求要发送给服务器的数据主体,GET方式没有请求体,POST方式有请求体。

传送较大数据使用POST方式。

 

二、响应报文

1、响应状态码:

常见状态码

趣味图解HTTP状态码的含义 

2、响应消息头:

Content-Type、Set-Cookie。

3、响应体:

页面(通常响应同步请求)


JSON数据(通常响应异步请求)

 

三、同步请求与异步请求

同步:$.ajax()后面的代码需要等$.ajax()函数把服务端响应处理完成才能继续执行。

异步:$.ajax()后面的代码不等待$.ajax()函数把服务端响应处理完,$.ajax()发送请求之后,后面的代码就开始执行了。

如果后续操作也是要等一段时间,$.ajax()先响应完了就可以先执行了。

因为异步的话,两个操作不是在同一个线程执行,所以互不干扰,并行推进。

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值