2017-04-18 14 views
2

春のRestTemplateを使用してREST呼び出しを行いたい場合、URLにいくつかのオプションのクエリパラメータが含まれています。 URLは、私が交換法にSpring RestTemplate GETリクエストで空のクエリパラメータを削除します。

restTemplate.exchangeを使用してrestTemplateするマップなどのparamsを渡す

URL = example.com/param1={param1} & PARAM2 = {} PARAM2

ようになります(URL、メソッド、ペイロード、String.class、paramsは)

最終URLである& example.com/param1=somevalue PARAM2 = PA以来ram2はparamsマップに存在しませんでした。

私は(example.com/param1=somevalueよう

答えて

2

になりますあなたはUriComponentsBuilderを使用して所望のparamsを提供することができますつまり、最後のURLのみのparam1とURLが含まれている必要があり、要求からPARAM2を削除したいですnullではありません)。

UriComponentsBuilder builder = UriComponentsBuilder.fromHttpUrl("example.com"); 
builder.replaceQueryParam("param1", param1value); 
... 
restTemplate.exchange(builder.build().encode().toUri(), 
        httpMethod, 
        requestEntity, 
        String.class) 
関連する問題