Bonjour
Je connecte une application Angular12 en récupérant un "Back" existant en Spring MVC, sur lequel j'ai peu de prise.
J'ai pus quand meme rajouter une authentification de logn en JWT qui me permet d'acceder à certains services REST principalement en GET
Néanmoins sur les requetes de type "POST" j'ai un 403 avec le message
[http-nio-8081-exec-4] DEBUG org.springframework.security.web.csrf.CsrfFilter - Invalid CSRF token found for http://localhost:8081/appli1/api/dossier/recherche
J'ai pus acceder au sources de l'ancien "Front" que je remplace et j'ai trouvé un cookies XSRF-TOKEN
J'ai don essayé sans résultat de faire la même chose avec ngx-cookes en récuperant le cookie depuis mon interceptor JWT, mais il est vide !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 dataType: "json", transport: { read: { method: 'POST', url: UtilService.generateApiUrl("dossier/recherche"), beforeSend: function(xhr) { xhr.setRequestHeader('X-XSRF-TOKEN', $cookies.get("XSRF-TOKEN")); } }
J'utilise un proxy.conf pour mes tests
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 export class JwtInterceptor implements HttpInterceptor { constructor(private authenticationService: AuthService,private cookieService: CookieService) { } intercept(request: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> { //pour test let cookieXSFR= this.cookieService.get("XSRF-TOKEN"); console.log("test COOKIE:"+cookieXSFR); //VIDE
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 { "/api/*": { "target": "http://localhost:8081", "secure": false, "pathRewrite": { "^/api/": "/appli1/api/" }, "changeOrigin": true, "logLevel": "debug" } }
mon cookie est bien vide dans mon interceptor et aussi dans ma méthode !
Dans mon onglet Network je vois bien un COOKIE
Que me manque t'il ?
Merci
Partager