码迷,mamicode.com
首页 > 编程语言 > 详细

ajax和springmvc的请求响应原理

时间:2019-09-20 16:59:48      阅读:103      评论:0      收藏:0      [点我收藏+]

标签:不能   content   obj   parameter   进一步   stp   rom   没有   post请求   

1,四大重要部分:

  请求链接

  post请求和get请求

  请求参数形式

  响应内容形式

2,从springmvc的controller角度,controller能接收到请求的前提

  请求链接必须对应

  post和get请求方式必须对应

  请求参数形式必须对应

3,从springmvc的controller角度,controller能成功响应的前提

  请求中指明的响应内容形式必须和controller的produces指明的一致

  controller的@ResponseBody的有与无

  controller的setViewName的有与无

4,进一步说明

  post请求:请求参数形式有两类:一类是Form Data,提交的是Object对象;另一类是Json,提交的是json字符串

    From Data:(Object参数)可以在controller中使用@RequestParam和简单pojo方式接收

    Json:(json字符串)可以在controller中使用@RequestBody接收

  get请求:请求参数形式只有一类:query string parameter,会被设置到url后面

    query string parameter:(key/value)可以在controller中使用@RequestParam和简单pojo方式接收

5,jQuery的ajax方法:

  $.get :默认使用 GET 方式   (无Content-Type,附加到url后)  无指定响应内容形式,由controller决定

  $.post:默认使用 POST方式   传递附加参数时(Content-Type:application/x-www-form-urlencoded) 没有附加参数时(无Content-Type)      无指定响应内容形式,由controller决定

  $getJSON:默认使用 GET 方式(无Content-Type)  专门返回json(Content-Type:application/json)

  $load:默认使用 GET 方式(无Content-Type) - 传递附加参数时自动转换为 POST 方式(Content-Type:application/x-www-form-urlencoded)  无指定响应内容形式,由controller决定

6,总结

  请求方式关系请求参数形式:get请求不能发送json字符串和Form Data,导致没有content-type请求头

                  post请求能够发送Form Data和json字符串,对应的content-type是Content-Type:application/x-www-form-urlencoded和Content-Type:application/json

  请求参数形式关系后端controller的参数接收:Form Data可以由简单pojo和@RequestParam接收;json字符串只能使用@RequestBody接收

                      query string parameter可以由简单pojo和@RequestParam接收

ajax和springmvc的请求响应原理

标签:不能   content   obj   parameter   进一步   stp   rom   没有   post请求   

原文地址:https://www.cnblogs.com/lirenhe/p/11557744.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!