代码之家  ›  专栏  ›  技术社区  ›  user840930

使用@restcontroller时如何设置访问控制允许来源?

  •  0
  • user840930  · 技术社区  · 6 年前

    我正在使用@restcontroller提供休息服务。但我需要在响应头中设置访问控制允许来源。我该怎么做?

    我的RestController:

    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RequestParam;
    import org.springframework.web.bind.annotation.RestController;
    
    @RestController
    public class restController  {
    
       @RequestMapping("/some")
       public Response some(@RequestParam(value="body")  String user) {
          return new Response(user);
       }
    }
    

    我的回答是:

    public class Response {
    
      long id;
      String user;
    
      public Response(String user) {
           this.id = 7;
           this.user = user;
      }
    }
    

    @restcontroller工作得很好,但是我如何修改它或者设置访问控制的响应允许来源?

    1 回复  |  直到 6 年前
        1
  •  0
  •   Seymur Asadov    6 年前

    试试这个代码:

      @CrossOrigin(origins = "*")
       @RequestMapping("/some")
       public Response some(@RequestParam(value="body")  String user) {
          return new Response(user);
       }
    

    或者这个

    @RequestMapping("/some")
    public Response some(@RequestParam(value="body")  String user,HttpServletResponse 
    response) {
       response.addHeader("Access-Control-Allow-Origin", "*");
       return new Response(user);
    }