Bonjour, je développe une application angular spring boot. Mon objectif est de recevoir dans mon controller spring un paramètre @RequestBody. En lisant des discussion sur internet, j'ai seulement trouvé des requêtes POST qui envoient des paramètres @RequestBody , alors que dans mon cas, c'est une requête GET.
Pourtant, je me suis tenu à une méthode POST dans mon controller. Voici mon controller
J'essaye de m'en tenir à une requête POST du coté de angular. Voici le code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 @RequestMapping(value = "/produitimmobilier/all/{pageSize}/{page}", method = RequestMethod.POST, produces = {"text/plain;charset=UTF-8", MediaType.APPLICATION_JSON_VALUE}, consumes = {"text/plain;charset=UTF-8", MediaType.APPLICATION_JSON_VALUE}) public @ResponseBody List<ProduitImmobilierDTO> findAll(@PathVariable("pageSize") int pageSize, @PathVariable("page") int page, @RequestBody Search search){ logger.info(search.toString()); return produitImmobilierService.findAll(pageSize, page); }
Et j'ai cette erreur
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 getListProduitImmobilierDTO(pagesize: number, page: number, search: Search): Observable<ProduitImmobilierDTO[]> { const headerDict = { 'Content-Type': 'application/json', Accept: 'application/json', 'Accept-Charset': 'charset=UTF-8', 'Access-Control-Allow-Headers': 'Content-Type' }; const requestOptions = { headers: new HttpHeaders(headerDict) }; return this.http.post<Search>('/api/produitimmobilier/all/' + pagesize + '/' + page, search, requestOptions).pipe(map((jsonArray: any) =>jsonArray.map((jsonItem) => ProduitImmobilierDTO.fromJson(jsonItem)))); }
Si j'ai bien compris, je ne peux pas mettre post<Search> avec un objet Search comme paramètre, et recevoir l'objet Observable<ProduitImmobilierDTO[]>. Je n'ai absolument rien trouvé sur internet. Pouvez vous m'aider ?Error: occured while trying to proxy to: localhost:4200/api/produitimmobilier/all/5/1
Message: Http failure response for http://localhost:4200/api/produitimmobilier/all/5/1: 504 Gateway Timeout
Partager