Я пытался разработать приложение Angular2, и я застрял, эта консоль в firefox пишет мне заголовок CORS 'Access-Control-Allow-Origin отсутствует. Я пытаюсь добавить этот заголовок в мой контроллер, но безуспешно. package org.heller.contacts.resources;
import java.util.List;
import org.heller.contacts.dto.ContactDto;
import org.heller.contacts.service.ContactService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpHeaders;
import org.springframework.http.MediaType;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping("contacts")
public class ContactResource {
@Autowired
private ContactService contactService;
@GetMapping(produces = { MediaType.APPLICATION_JSON_VALUE })
public ResponseEntity<List<ContactDto>> getContacts() {
HttpHeaders headers = new HttpHeaders();
headers.add("Access-Control-Allow-Origin", "http://localhost:4200/public/contacts");
headers.add("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE");
headers.add("Access-Control-Max-Age", "3600");
headers.add("Access-Control-Allow-Headers", "x-requested-with");
return ResponseEntity.accepted().headers(headers).body(contactService.getAll());
}
}
Я также пытался добавить это в свою сеть. xml, но с той же ошибкой:
<filter>
<filter-name>CorsFilter</filter-name>
<filter-class>org.apache.catalina.filters.CorsFilter</filter-class>
<init-param>
<param-name>cors.allowed.origins</param-name>
<param-value>*</param-value>
</init-param>
<init-param>
<param-name>cors.allowed.methods</param-name>
<param-value>GET,POST,PUT</param-value>
</init-param>
<init-param>
<param-name>cors.allowed.headers</param-name>
<param-value>Content-Type,X-Requested-With,accept,Origin,Access-Control-Request-Method,Access-Control-Request-Headers</param-value>
</init-param>
<init-param>
<param-name>cors.exposed.headers</param-name>
<param-value>*</param-value>
</init-param>
<init-param>
<param-name>cors.support.credentials</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>cors.preflight.maxage</param-name>
<param-value>180</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CorsFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
Может кто-нибудь дать мне немного, чтобы решить эту проблему. Я полностью застрял с этим. Я пытаюсь решить это за один день, но я все еще в начале. Спасибо за помощь