SpringMVC注解@CrossOrigin跨域問(wèn)題詳解
前言
一般的,只要網(wǎng)站的【協(xié)議名protocol】、【主機(jī)host】、【端口號(hào)port】這三個(gè)中的任意一個(gè)不同,網(wǎng)站間的數(shù)據(jù)請(qǐng)求與傳輸便構(gòu)成了跨域調(diào)用 跨域:瀏覽同源策略的造成,是瀏覽器對(duì)JavaScript施加的安全限制 CORS是一種可以解決跨域問(wèn)題的技術(shù)
SprinMVC通過(guò)@CrossOrigin注解解決跨域
在Spring MVC4.2之后推出了@CrossOrigin注解來(lái)解決跨域問(wèn)題,而在4.2之前我們都是通過(guò)定義注冊(cè)過(guò)濾器的方式來(lái)解決跨域問(wèn)題的
@CrossOrigin的參數(shù)
1、origins:允許可訪問(wèn)的域列表;*表示可以是任何來(lái)源
2、maxAge:準(zhǔn)備響應(yīng)前的緩存持續(xù)的最大時(shí)間(單位:秒)
@CrossOrigin使用在Controller層
1、類(lèi)上,此類(lèi)中所有方法啟用跨域支持
// 開(kāi)啟跨域支持
@CrossOrigin
@RestController
@RequestMapping("/user")
public class UserController {
}
2、方法上,僅此方法啟用跨域支持
// 開(kāi)啟跨域支持
@CrossOrigin
@RequestMapping(value = "/findAll", method = RequestMethod.GET)
public List<User> findAll(){
return userService.findAll();
}
注意
1、注解失效問(wèn)題:此時(shí)Controlle的方法上@RequestMapping注解中需要聲明請(qǐng)求方式即增加method=RequestMethod.XXX
2、添加注解后session失效問(wèn)題:此時(shí)對(duì)的ajax請(qǐng)求中需要添加xhrFields:{withCredentials:true}(每個(gè)ajax中都需要加此屬性,以保證session一致)
$.ajax({
type: "post",
url: '/user/login',
xhrFields: {withCredentials: true},
data: {
username: username,
password: password
},
success: function (msg) {
console.log('登錄成功');
},
error: function (msg) {
console.log('請(qǐng)求報(bào)錯(cuò)!');
}
})
到此這篇關(guān)于SpringMVC注解@CrossOrigin跨域問(wèn)題詳解的文章就介紹到這了,更多相關(guān)@CrossOrigin跨域問(wèn)題內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
基于application和bootstrap的加載順序及區(qū)別說(shuō)明
這篇文章主要介紹了application和bootstrap的加載順序及區(qū)別說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-07-07
WIN7系統(tǒng)JavaEE(java)環(huán)境配置教程(一)
這篇文章主要介紹了WIN7系統(tǒng)JavaEE(java+tomcat7+Eclipse)環(huán)境配置教程,本文重點(diǎn)在于java配置,感興趣的小伙伴們可以參考一下2016-06-06
Spring防止重復(fù)點(diǎn)擊的兩種實(shí)現(xiàn)方法
頁(yè)面重復(fù)提交導(dǎo)致的問(wèn)題就是數(shù)據(jù)被重復(fù)保存,我們經(jīng)常會(huì)誤觸點(diǎn)擊兩次,所以本文小編給大家介紹了Spring防止重復(fù)點(diǎn)擊的兩種實(shí)現(xiàn)方法,需要的朋友可以參考下2025-01-01
mybatis 忽略實(shí)體對(duì)象的某個(gè)屬性(2種方式)
這篇文章主要介紹了mybatis 忽略實(shí)體對(duì)象的某個(gè)屬性方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-06-06
springmvc—handlermapping三種映射方式
這篇文章主要介紹了springmvc—handlermapping三種映射方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-09-09

