日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

springboot 跨域配置cors

發布時間:2024/9/16 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 springboot 跨域配置cors 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

擼了今年阿里、頭條和美團的面試,我有一個重要發現.......>>>

1 跨域的理解

跨域是指:瀏覽器A服務器B獲取的靜態資源,包括Html、Css、Js,然后在Js中通過Ajax訪問C服務器的靜態資源或請求。即:瀏覽器A從B服務器拿的資源,資源中想訪問服務器C的資源。

同源策略是指:瀏覽器A服務器B獲取的靜態資源,包括Html、Css、Js,為了用戶安全,瀏覽器加了限制,其中的Js通過Ajax只能訪問B服務器的靜態資源或請求。即:瀏覽器A從哪拿的資源,那資源中就只能訪問哪。

同源是指:同一個請求協議(如:Http或Https)、同一個Ip、同一個端口,3個全部相同,即為同源。

2 跨域的處理

跨域的這種需求還是有的,因此,W3C組織制定了一個Cross-Origin Resource Sharing規范,簡寫為Cors,現在這個規范已經被大多數瀏覽器支持,從而,處理跨域的需求。

Cors需要在后端應用進行配置,因此,是一種跨域的后端處理方式,這么做也容易理解,一個你不認識的源來訪問你的應用,自然需要應用進行授權。除了后端處理方式,也有前端的解決方案,如:JSONP,因這里我們主要講解SpringBoot2.x對Cors的配置,暫不對前端解決方案進行詳細說明。

3 跨域的分類

跨域分為以下3種

名稱英文名說明
簡單請求Simple Request發起的Http請求符合:
1.無自定義請求頭,
2.請求動詞為GET、HEAD或POST之一,
3.動詞為POST時,Content-Type是application/x-www-form-urlencoded,
multipart/form-data或text/plain之一
預檢請求Preflighted Request發起的Http請求符合其中之一:
1.包含了自定義請求頭,
2.請求動詞不是GET、HEAD或POST,
3.動詞是POST時, Content-Type不是application/x-www-form-urlencoded,
multipart/form-data或text/plain。 即:簡單請求的相反
憑證請求Requests with Credential發起的Http請求中帶有憑證

4 SpringBoot2.x配置Cors

@RestController @RequestMapping(value = "/api/users") @CrossOrigin public class UsersController{@Autowiredprivate UsersService usersService;@PostMapping@CrossOriginpublic User create(@RequestBody User user) {return userService.save(user);} }

?其中,@CrossOrigin注解可以使用以下參數

?

名稱類型范圍必填請求頭字段
valueString數組類或方法Access-Control-Allow-Origin
originsString數組類或方法是,同value,可以二選一Access-Control-Allow-Origin
methodsString數組類或接口Access-Control-Allow-Methods
maxAgelong類或接口Access-Control-Max-Age
allowCredentialsString類或接口Access-Control-Allow-Credentials
allowedHeadersString數組類或接口Access-Control-Request-Headers
exposedHeadersString數組類或接口Access-Control-Expose-Headers
  • 備注說明
  • value、origins屬性:配置允許訪問的源,如: http://anxminise.cc,*表示允許全部的域名
  • methods屬性:配置跨域請求支持的方式,如:GET、POST,且一次性返回全部支持的方式
  • maxAge屬性:配置預檢請求的有效時間, 單位是秒,表示:在多長時間內,不需要發出第二次預檢請求
  • allowCredentials屬性:配置是否允許發送Cookie,用于 憑證請求, 默認不發送cookie
  • allowedHeaders屬性:配置允許的自定義請求頭,用于 預檢請求
  • exposedHeaders屬性:配置響應的頭信息, 在其中可以設置其他的頭信息,不進行配置時, 默認可以獲取到Cache-Control、Content-Language、Content-Type、Expires、Last-Modified、Pragma字段
  • ?使用WebMvcConfigurer對象

    @Configuration public class MyConfiguration {@Beanpublic WebMvcConfigurer corsConfigurer() {return new WebMvcConfigurer() {@Overridepublic void addCorsMappings(CorsRegistry registry) {registry.addMapping("/api/**").allowedOrigins("*") .allowCredentials(true).allowedMethods("GET", "POST", "DELETE", "PUT","PATCH").maxAge(3600); }};} }

    或者這個方式:

    @Configuration public class WebMvcConfig implements WebMvcConfigurer {@Overridepublic void addViewControllers(ViewControllerRegistry registry) {registry.addMapping("/**").allowedOrigins("*").allowedMethods("POST", "GET", "PUT", "OPTIONS", "DELETE").maxAge(3600).allowCredentials(true);} }

    其中,通過相應的方法實現跨域請求的配置

    方法類方法名稱必填請求頭字段說明
    CorsRegistryaddMapping無, 非Cors屬性,?
    屬于SpringBoot配置
    配置支持跨域的路徑
    CorsRegistrationallowedOriginsAccess-Control-Allow-Origin配置允許的源
    CorsRegistrationallowedMethodsAccess-Control-Allow-Methods配置支持跨域請求的方法,?
    如:GET、POST,一次性返回
    CorsRegistrationmaxAgeAccess-Control-Max-Age配置預檢請求的有效時間
    CorsRegistrationallowCredentialsAccess-Control-Allow-Credentials配置是否允許發送Cookie, 用于 憑證請求
    CorsRegistrationallowedHeadersAccess-Control-Request-Headers配置允許的自定義請求頭, 用于 預檢請求
    CorsRegistrationexposedHeadersAccess-Control-Expose-Headers配置響應的頭信息,?
    在其中可以設置其他的頭信息
    與50位技術專家面對面20年技術見證,附贈技術全景圖

    總結

    以上是生活随笔為你收集整理的springboot 跨域配置cors的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 亚洲天堂网视频 | 体内精视频xxxxx | 青青草官网 | www.4hu95.com四虎| 你懂的91| 天堂欧美| 日韩成人免费电影 | 亚洲精品77777 | 美丽的姑娘观看在线播放 | 美女av免费在线观看 | 亚洲一本之道 | 成人一区二区在线观看 | 亚洲天堂第一区 | 宅男噜噜噜66一区二区 | 青草视频在线观看免费 | 丰满少妇一区二区三区视频 | 鲁一鲁啪一啪 | 有色影院 | 手机av资源 | 一级aa毛片| 久久综合第一页 | 久久av影院| 91视频国产精品 | 深夜视频一区二区三区 | 美国成人av| 黄频网站在线观看 | 欧美亚洲综合网 | 成人欧美一区二区三区黑人动态图 | 成人亚洲电影 | 日韩av一级片 | 亚洲另类欧美日韩 | 国产美女精品 | xxx国产| 久久艹中文字幕 | 一区二区高清 | 欧洲亚洲一区 | 中文字幕av一区二区三区人妻少妇 | 嫩草影院av | 大地资源高清播放在线观看 | 一曲二曲三曲在线观看中文字幕动漫 | 一区二区三区精品在线 | 欧美亚洲视频在线观看 | 国产精品久久久久久吹潮 | 台湾佬美性中文娱乐 | 91久热| 国产精品原创 | 91麻豆精品国产91久久久久久久久 | 国产一区二区视频在线免费观看 | 伦理片久久 | 黄色福利视频 | 毛片链接 | 91精品国产综合久久久蜜臀九色 | 91国在线观看 | 国产麻豆视频 | 国产无遮挡免费观看视频网站 | 特黄做受又粗又大又硬老头 | 欧美日韩亚洲系列 | 国产福利影院 | 男人天堂综合 | 荔枝视频污 | av黄色av | 国产sm在线观看 | 经典三级在线视频 | 四虎永久免费影院 | 国产爽视频 | 亚洲国产成人av | 九色porny自拍视频在线播放 | 99人人爽 | 黄色国产一级 | 国产乱国产乱老熟300部视频 | 羞辱极度绿帽vk | 秋霞午夜网 | 精品人妻一区二区乱码 | 无遮挡国产 | 欧美变态另类刺激 | 免费亚洲网站 | 狂野少女电影在线观看国语版免费 | 一级片免费观看视频 | 青青艹在线视频 | 三上悠亚 电影 | 日韩精品免费一区二区夜夜嗨 | 黄频网站在线观看 | 婷婷五月精品中文字幕 | 国产日产亚洲精品 | 日日操夜夜爽 | 国产三级日本三级在线播放 | 不卡中文字幕在线 | 精品无码三级在线观看视频 | 麻豆国产网站 | 亚洲av毛片一区二二区三三区 | 中文字幕观看视频 | 欧美日韩久久久久 | 午夜精品一区二区三区在线 | 亚洲精品一区二区三区四区 | 黄色wwwww | 一级片在线 | 欧美日韩成人一区二区三区 | 国产一区二区久久 | 男女啪啪av|