@CrossOrigin 跨域注解

Posted 瓜子

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了@CrossOrigin 跨域注解相关的知识,希望对你有一定的参考价值。

在spring 4.2后,提供了跨域注解@CrossOrigin

https://spring.io/guides/gs/rest-service-cors/

Enabling CORS

Controller method CORS configuration

So that the RESTful web service will include CORS access control headers in its response, you just have to add a @CrossOrigin annotation to the handler method:

src/main/java/hello/GreetingController.java

用例:

  @CrossOrigin(origins = "http://localhost:9000")
    @GetMapping("/greeting")
    public Greeting greeting(@RequestParam(required=false, defaultValue="World") String name) {
        System.out.println("==== in greeting ====");
        return new Greeting(counter.incrementAndGet(), String.format(template, name));
    }

 

This @CrossOrigin annotation enables cross-origin requests only for this specific method. By default, its allows all origins, all headers, the HTTP methods specified in the @RequestMapping annotation and a maxAge of 30 minutes is used. You can customize this behavior by specifying the value of one of the annotation attributes: origins, methods, allowedHeaders, exposedHeaders, allowCredentials or maxAge. In this example, we only allow http://localhost:9000 to send cross-origin requests.

@CrossOrigin注解是被注解的方法具备接受跨域请求的功能。默认情况下,它使方法具备接受所有域,所有请求消息头的请求。。。。这个例子中,我们仅接受

http://localhost:9000发送来的跨域请求。

 

 

 

 

 

 

以上是关于@CrossOrigin 跨域注解的主要内容,如果未能解决你的问题,请参考以下文章

springboot之跨域访问cros,@CrossOrigin注解

使用注解@CrossOrigin解决跨域问题

springboot的@CrossOrigin注解解决细粒度的配置跨域

SpringBoot跨域(CORS)支持:注解@CrossOrigin

注解@CrossOrigin解决跨域问题

SpringMVC中利用@CrossOrigin注解解决ajax跨域请求的问题