ajax和springmvc的请求响应原理——深入理解jQuery中$.get、$.post、$.getJSON和$.ajax的用法
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接收
7,参考:深入理解jQuery中$.get、$.post、$.getJSON和$.ajax的用法(https://www.cnblogs.com/ranzige/p/jquery_get_ajax.html)
ajax和springmvc的请求响应原理——深入理解jQuery中$.get、$.post、$.getJSON和$.ajax的用法的更多相关文章
- Web 请求响应原理(转)
用Java实现Web服务器 减小字体 增大字体 摘要:WWW的工作基于客户机/服务器计算模型,由Web 浏览器(客户机)和Web服务器(服务器)构成,两者之间采用超文本传送协议(HTTP)进行通信,H ...
- SpringMVC之请求响应(上)
1.OutPutController package com.tz.controller; import java.util.Map; import org.springframework.stere ...
- 初探Asp.net请求机制原理 1
web原理 请求---响应 而一个 简单的请求 响应中包含太多知识,只有把 请求响应原理搞懂才能在web的世界里好好翱翔(注:自已的整理的知识参考博友们东西或自已所想,没有盗版权的意思,在此说明就不引 ...
- content-type常见类型辨析(以ajax与springmvc前后端交互为例)
博客搬家: content-type常见类型辨析(以ajax与springmvc前后端交互为例) 在http报文的首部中,有一个字段Content-type,表示请求体(entity body)中的数 ...
- 详解Ajax请求(一)前言——同步请求的原理
我们知道,ajax是一种异步请求的方式,想要了解异步请求,就必须要先从同步请求说起.常见的同步请求的方式是form表单的提交,我们先从一种同步请求的示例说起. 我们希望输入姓名可以从后台得到身份证号. ...
- Spring系列 SpringMVC的请求与数据响应
Spring系列 SpringMVC的请求与数据响应 SpringMVC的数据响应 数据响应的方式 y以下案例均部署在Tomcat上,使用浏览器来访问一个简单的success.jsp页面来实现 Suc ...
- HTTP协议请求响应过程和HTTPS工作原理
HTTP协议 HTTP协议主要应用是在服务器和客户端之间,客户端接受超文本. 服务器按照一定规则,发送到客户端(一般是浏览器)的传送通信协议.与之类似的还有文件传送协议(file transfer p ...
- ajax请求响应中用window.open打开新窗口会被浏览器拦截的解决方式
一.问题描述 ajax 异步请求成功后需要新开窗口打开 url,使用的是 window.open() 方法,但是会被浏览器给拦截了,需要用户点下. 二.问题分析 浏览器之所以拦截新开窗口是因为该操作并 ...
- asp.net请求响应模型原理随记回顾
asp.net请求响应模型原理随记回顾: 根据一崇敬的讲师总结:(会存在些错误,大家可以做参考) 1.-当在浏览器输入url后,客户端会将请求根据http协议封装成为http请求报文.并通过主sock ...
随机推荐
- YOLOV4知识点分析(二)
YOLOV4知识点分析(二) 6. 数据增强相关-mixup 论文名称:mixup: BEYOND EMPIRICAL RISK MINIMIZATION 论文地址:https://arxiv.org ...
- Comparison of Laser SLAM and Visual SLAM
Comparison of Laser SLAM and Visual SLAM 目前,SLAM技术广泛应用于机器人.无人机.无人机.AR.VR等领域,依靠传感器可以实现机器的自主定位.测绘.路径规划 ...
- 《精通 ASP.NET Core MVC (第七版)》开始发售
学习 Web 开发技术很难吗?没有适合的学习资料,确实很枯燥,很难.如果有一本如同良师益友的优秀图书辅助,就很轻松,一点也不难! 对于优秀的技术图书来说,必须从读者的角度来编写,而不是从作者的角度来编 ...
- 【九】Kubernetes 之 Service 概念图文讲解及功能演示
Service 概念 Kubernetes Service 定义了这样一种抽象:逻辑上的一组 Pod,一种可以访问它们的策略 -- 通常称为微服务. Service 通常是通过 Label Selec ...
- 三、部署被监控主机-Zabbix Agent
三.部署被监控主机-Zabbix Agent 1) 源码安装Zabbix agent软件 在2.100和2.200做相同操作(以zabbixclient web1为例). [root@zabbixcl ...
- 基于redis实现的四种常见的限流策略
引言 在web开发中功能是基石,除了功能以外运维和防护就是重头菜了.因为在网站运行期间可能会因为突然的访问量导致业务异常.也有可能遭受别人恶意攻击 所以我们的接口需要对流量进行限制.俗称的QPS也是对 ...
- UF_LAYER 图层操作
Open C uc5007uc5008uc5009UF_LAYER_ask_category_infoUF_LAYER_ask_category_tagUF_LAYER_ask_statusUF_LA ...
- 使用mockjs模拟分页请求
首先安装mockjs npm install mockjs --save-dev 创建mock.js //mock.js const Mock = require("mockjs" ...
- 浅谈lambda表达式<最通俗易懂的讲解
Java8发布已经有一段时间了,这次发布的改动比较大,很多人将这次改动与Java5的升级相提并论.Java8其中一个很重要的新特性就是lambda表达式,允许我们将行为传到函数中.想想看,在Java8 ...
- Oracle 审计文件
Oracle审计功能: Oracle11g推出了审计功能,但这个功能会针对很多操作都产生审计文件.aud,日积月累下来这些文件也很多,默认情况下,系统为了节省资源,减少I/0操作,其审计功能是关闭的 ...