激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達(dá)式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務(wù)器之家 - 編程語言 - Java教程 - Java Spring boot 2.0 跨域問題的解決

Java Spring boot 2.0 跨域問題的解決

2021-04-24 11:44低調(diào)的小白 Java教程

本篇文章主要介紹了Java Spring boot 2.0 跨域問題的解決,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧

跨域

一個(gè)資源會發(fā)起一個(gè)跨域http請求(cross-site http request), 當(dāng)它請求的一個(gè)資源是從一個(gè)與它本身提供的第一個(gè)資源的不同的域名時(shí) 。

比如說,域名a(http://domaina.example)的某 web 應(yīng)用程序中通過標(biāo)簽引入了域名b(http://domainb.foo)站點(diǎn)的某圖片資源(http://domainb.foo/image.jpg),域名a的那 web 應(yīng)用就會導(dǎo)致瀏覽器發(fā)起一個(gè)跨站 http 請求。在當(dāng)今的 web 開發(fā)中,使用跨站 http 請求加載各類資源(包括css、圖片、javascript 腳本以及其它類資源),已經(jīng)成為了一種普遍且流行的方式。

正如大家所知,出于安全考慮,瀏覽器會限制腳本中發(fā)起的跨站請求。比如,使用 xmlhttprequest對象發(fā)起 http 請求就必須遵守同源策略。 具體而言,web 應(yīng)用程序能且只能使用 xmlhttprequest 對象向其加載的源域名發(fā)起 http 請求,而不能向任何其它域名發(fā)起請求。為了能開發(fā)出更強(qiáng)大、更豐富、更安全的web應(yīng)用程序,開發(fā)人員渴望著在不丟失安全的前提下,web 應(yīng)用技術(shù)能越來越強(qiáng)大、越來越豐富。比如,可以使用 xmlhttprequest 發(fā)起跨站 http 請求。(這段描述跨域不準(zhǔn)確,跨域并非瀏覽器限制了發(fā)起跨站請求,而是跨站請求可以正常發(fā)起,但是返回結(jié)果被瀏覽器攔截了。最好的例子是csrf跨站攻擊原理,請求是發(fā)送到了后端服務(wù)器無論是否跨域!注意:有些瀏覽器不允許從https的域跨域訪問http,比如chrome和firefox,這些瀏覽器在請求還未發(fā)出的時(shí)候就會攔截請求,這是一個(gè)特例。)

more:https://developer.mozilla.org/zh-cn/docs/web/http/access_control_cors

cros

cors 全稱為 cross origin resource sharing(跨域資源共享),服務(wù)端只需添加相關(guān)響應(yīng)頭信息,即可實(shí)現(xiàn)客戶端發(fā)出 ajax 跨域請求。

@crossorigin

1.在controller上直接使用  controller上的所有請求都可以跨域 ,origins = "*" 代表所有都能請求

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
@crossorigin(origins = "http://domain2.com", maxage = 3600)
@restcontroller
@requestmapping("/account")
public class accountcontroller {
 
  @requestmapping("/{id}")
  public account retrieve(@pathvariable long id) {
    // ...
  }
 
  @requestmapping(method = requestmethod.delete, path = "/{id}")
  public void remove(@pathvariable long id) {
    // ...
  }
}

2. 在方法上使用

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
@crossorigin(maxage = 3600)
@restcontroller
@requestmapping("/account")
public class accountcontroller {
 
  @crossorigin("http://domain2.com")
  @requestmapping("/{id}")
  public account retrieve(@pathvariable long id) {
    // ...
  }
 
  @requestmapping(method = requestmethod.delete, path = "/{id}")
  public void remove(@pathvariable long id) {
    // ...
  }
}

另一中方法:

corsfilter  主要目的便是添加相關(guān)的信息頭,使用filter也可以實(shí)現(xiàn)。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
@configuration
public class beanconfiguration {
 
  @bean
  public corsfilter corsfilter() {
    final urlbasedcorsconfigurationsource urlbasedcorsconfigurationsource = new urlbasedcorsconfigurationsource();
    final corsconfiguration corsconfiguration = new corsconfiguration();
    corsconfiguration.setallowcredentials(true);
    corsconfiguration.addallowedorigin("*");
    corsconfiguration.addallowedheader("*");
    corsconfiguration.addallowedmethod("*");
    urlbasedcorsconfigurationsource.registercorsconfiguration("/**", corsconfiguration);
    return new corsfilter(urlbasedcorsconfigurationsource);
  }
 
}

access-control-allow-origin:允許訪問的客戶端域名,例如:http://web.xxx.com,若為 *,則表示從任意域都能訪問,即不做任何限制。

  1. access-control-allow-methods:允許訪問的方法名,多個(gè)方法名用逗號分割,例如:get,post,put,delete,options。
  2. access-control-allow-credentials:是否允許請求帶有驗(yàn)證信息,若要獲取客戶端域下的 cookie 時(shí),需要將其設(shè)置為 true。
  3. access-control-allow-headers:允許服務(wù)端訪問的客戶端請求頭,多個(gè)請求頭用逗號分割,例如:content-type。
  4. access-control-expose-headers:允許客戶端訪問的服務(wù)端響應(yīng)頭,多個(gè)響應(yīng)頭用逗號分割。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持服務(wù)器之家。

原文鏈接:http://www.cnblogs.com/wang-yaz/p/8966768.html

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 黄色小视频在线免费看 | 精品国产专区 | 免费一区区三区四区 | 国产精品久久久久久久久久久久久久久久 | 天天艹综合| 成人欧美日韩一区二区三区 | 免费视频 久久久 | 国产精品1区2区在线观看 | 色网免费观看 | 一区二区三区欧美在线 | 国产成人在线一区 | 精品一区二区三区在线观看视频 | 亚洲精品午夜电影 | 高清国产一区二区三区四区五区 | 欧洲精品久久久 | 夜间福利视频 | 羞羞答答影院 | 一区国产在线 | 999久久久国产999久久久 | 成人短视频在线观看免费 | 一级一级一级毛片 | 九九热免费精品 | 国产精品视频在线观看免费 | 国产一级大片在线观看 | 欧美亚洲黄色片 | 国产精品欧美久久久久一区二区 | 13一14毛片免费看 | 久草在线观看首页 | 国产在线区 | 中文字幕一区在线观看视频 | 少妇一级淫片高潮流水电影 | 国产在线观看 | 欧美亚洲另类在线 | 欧美18xxxx| 久久人人爽人人爽人人片av高请 | 亚欧美一区二区 | 老师你怎么会在这第2季出现 | 97香蕉超级碰碰久久免费软件 | 成人爱情偷拍视频在线观看 | 羞羞视频免费视频欧美 | 日韩一级精品 |