Я использую @RestController для предоставления службы REST. Но мне нужно установить Access-Control-Allow-Origin в заголовке ответа. Как мне это сделать?

Мой 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 работает очень хорошо, но как я могу изменить его или ответ, чтобы установить Access-Control-Allow-Origin?

0
user840930 11 Сен 2018 в 13:57

1 ответ

Лучший ответ

Попробуйте этот код:

  @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);
}
1
Seymur Asadov 11 Сен 2018 в 11:34