简体   繁体   中英

How can send multiple params on a get request

First of all, give thanks for reading my question and try to help me and apologize for my English.

I'm new with Spring and I have this message:

A servlet request to the URI

http://localhost:8080/backend/v1/streetviewer/search-street?url=backend2?busqueda=name%20street&idioma=es-es%26cantidad=10

contains form parameters in the request body but the request body has been consumed by the servlet or a servlet filter accessing the request parameters. Only resource methods using @FormParam will work as expected. Resource methods consuming the request body by other means will not work as expected.

My backend send a request to backend2 with one parameter (url), but that url contains 3 parameters. I understand that is reason why say that.

But I was reading that @FormParam is used for POST requests and I'm using @QueryParam .

@GET
@Path(ApiPath.PATH_BACKEND2)
public String getDataFromProdServer(@QueryParam(ApiParam.PARAM_URL) final String externalUrl ) {
    return mapService.ServerRequest(externalUrl);
}

How can solve it??

To be said you are actually using JAX-RS Implementation, from backend2 I asume it is a separate service so I suggest you to use Spring Implementations for consuming the API. @RequestMapping/@GetMapping and so..

Coming to the question (With Spring Implementation)

@GetMapping(ApiPath.PATH_BACKEND2)
public String getDataFromProdServer(@RequestParam(ApiParam.PARAM_UR) final String externalUrl) {
  return mapService.serverRequest(externalUrl);
}

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM