Is there a way to add a query parameter to every HTTP request performed by RestTemplate
in Spring?
The Atlassian API uses the query parameter os_authType
to dictate the authentication method so I'd like to append ?os_authtype=basic
to every request without specifying it all over my code.
Code
@Service
public class MyService {
private RestTemplate restTemplate;
@Autowired
public MyService(RestTemplateBuilder restTemplateBuilder,
@Value("${api.username}") final String username, @Value("${api.password}") final String password, @Value("${api.url}") final String url ) {
restTemplate = restTemplateBuilder
.basicAuthorization(username, password)
.rootUri(url)
.build();
}
public ResponseEntity<String> getApplicationData() {
ResponseEntity<String> response
= restTemplate.getForEntity("/demo?os_authType=basic", String.class);
return response;
}
}