RESTful开发风格

2020-06-22  本文已影响0人  蓝色Hippie

一、传统web开发

传统开发模式

需要浏览器支持html模式,而多元化的应用像小程序等无法支持html

二、RESTful风格

1.介绍

REST:表现层状态转换,资源在网络中以某种表现形式进行状态转移

RESTful: 是基于REST理念的一套开发风格,是具体的开发规则

2.RESTful开发规则

使用url作为用户交互入口

明确的语义规范(GET|POST|PUT|DELETE)

只返回数据(JSON|XML),不包含任何展现

3.命名要求

4.RestController与路径变量

@RestController:注解的类,默认方法都是返回字符串,等同于方法上加上@ResponseBody

路径变量的使用:

针对于请求:/restful/request/8

controller

5. 简单请求与非简单请求

简单请求:指标准结构的HTTP请求,对应GET/POST请求

非简单请求:复杂要求的HTTP请求,指PUT/DELETE、    扩展标准请求

两者最大的区别就是:非简单请求发送前需要发送预检请求

springmvc支持非简单请求,需配置:

web.xml

6.jackson对springmvc的支持

引入相应jar:jackson-core 、jackson-databind、jackson-annotations后,控制器返回实体类时,将自动序列号为JSON字符串

controller get请求

7、浏览器的同源策略

同源策略阻止从一个域加载的脚本去获取另一个域上的资源

只要协议、域名、端口有任何一个不同,都被当做是不同的域

浏览器console看到access-control-allow-origin就代表跨域了

html中允许跨域的标签:img、link、script

8、springmvc解决跨域访问问题

8.1 cors跨域资源访问

CORS是一种机制,使用额外的http头通知浏览器可以访问其它域

url响应头包含access-control-*指明请求跨域

8.2 springmvc解决跨域问题

@CrossOrigin--controller跨域注解

<mvc:cros>--springmvc全局跨域配置

applicationContext.xml
上一篇 下一篇

猜你喜欢

热点阅读