您好,登錄后才能下訂單哦!
跨域是一個(gè)比較常見的功能了,看看springboot的注解實(shí)現(xiàn)
@Target({ ElementType.METHOD, ElementType.TYPE })
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface CrossOrigin {
String[] DEFAULT_ORIGINS = { "*" };
String[] DEFAULT_ALLOWED_HEADERS = { "*" };
boolean DEFAULT_ALLOW_CREDENTIALS = true;
long DEFAULT_MAX_AGE = 1800;
/**
* 同origins屬性一樣
*/
@AliasFor("origins")
String[] value() default {};
/**
* 所有支持域的集合,例如"http://domain1.com"。
* <p>這些值都顯示在請(qǐng)求頭中的Access-Control-Allow-Origin
* "*"代表所有域的請(qǐng)求都支持
* <p>如果沒有定義,所有請(qǐng)求的域都支持
* @see #value
*/
@AliasFor("value")
String[] origins() default {};
/**
* 允許請(qǐng)求頭重的header,默認(rèn)都支持
*/
String[] allowedHeaders() default {};
/**
* 響應(yīng)頭中允許訪問的header,默認(rèn)為空
*/
String[] exposedHeaders() default {};
/**
* 請(qǐng)求支持的方法,例如"{RequestMethod.GET, RequestMethod.POST}"}。
* 默認(rèn)支持RequestMapping中設(shè)置的方法
*/
RequestMethod[] methods() default {};
/**
* 是否允許cookie隨請(qǐng)求發(fā)送,使用時(shí)必須指定具體的域
*/
String allowCredentials() default "";
/**
* 預(yù)請(qǐng)求的結(jié)果的有效期,默認(rèn)30分鐘
*/
long maxAge() default -1;
}
@RestController
//實(shí)現(xiàn)跨域注解
//origin=""代表所有域名都可訪問
//maxAge飛行前響應(yīng)的緩存持續(xù)時(shí)間的最大年齡,簡(jiǎn)單來說就是Cookie的有效期 單位為秒
//若maxAge是負(fù)數(shù),則代表為臨時(shí)Cookie,不會(huì)被持久化,Cookie信息保存在瀏覽器內(nèi)存中,瀏覽器關(guān)閉Cookie就消失
@CrossOrigin(origins = "",maxAge = 3600)
public class UserController {@Resource
br/>@Resource
@GetMapping("finduser")
public User finduser(@RequestParam(value="id") Integer id){
//此處省略相應(yīng)代碼
}
}
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。