Comment activer les requêtes inter-domaines sur les services Web JAX-RS (CORS) ?

Erreur : No ‘Access-Control-Allow-Origin’ header is present on the requested resource.


Après un peu de recherche, j’ai trouvé un moyen (spécifique à RestEasy) d’activer CORS sur Wildfly sans utiliser de filtre et où vous pouvez contrôler la configuration de l’en-tête de réponse de vos API au niveau des ressources

@GET
@Produces(MediaType.APPLICATION_JSON)
public Response getMemberList() {
    List<Member> memberList = memberDao.listMembers();
    members.addAll(memberList);
    return Response
            .status(200)
            .header("Access-Control-Allow-Origin", "*")
            .header("Access-Control-Allow-Headers", "origin, content-type, accept, authorization")
            .header("Access-Control-Allow-Credentials", "true")
            .header("Access-Control-Allow-Methods", "GET, POST, PUT, DELETE, OPTIONS, HEAD")
            .header("Access-Control-Max-Age", "1209600")
            .entity(memberList)
            .build();
}

Ce n’est qu’après cela, que je pouvais utiliser correctement mes points de terminaison API JAX-RS des clients Jquery Ajax sur d’autres domaines ou hôtes.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

العربيةEnglishFrançais