Kimlik doğrulama sağlayıcısına (Auth0) bir HTTP isteği göndermem gerekiyor. E-posta adresine göre belirli bir kullanıcı almak istiyorum. Ben RestTemplate ile (Bahar), şansımı denedim Şifreli parametrelere sahip RestTemplate
curl -H "Authorization: Bearer ..." https://.../users?q=email%3A%22mymail%40abc.de%22&search_engine=v2
:
public void doSomething() {
...
Map<String, String> requestMap = new HashMap<>();
requestMap.put("q", "email%3A%22mymail%40abc.de%22");
requestMap.put("search_engine", "v2");
RestTemplate restTemplate = getRestTemplateForRequestMap();
HttpHeaders headers = getHeaders();
HttpEntity<Map<String, String>> request = new HttpEntity<>(requestMap, headers);
ResponseEntity<UserInfo[]> response = restTemplate.exchange(URI.create(baseApiUrl + "users"), HttpMethod.GET, request, UserInfo[].class);
...
}
private RestTemplate getRestTemplateForRequestMap() {
RestTemplate restTemplate = new RestTemplate();
List messageConverters = new ArrayList<>();
messageConverters.add(new MappingJackson2HttpMessageConverter());
restTemplate.setMessageConverters(messageConverters);
return restTemplate;
}
q
parametresinin değeri benziyor
istek gitmek zorunda "Lucene sorgu sözdizimi"). Farklı varyasyonları denedim. Hatta onları kodlanmış "kodlanmış" koydum.
Ancak, q
parametresinin çalışmadığı gibi görünüyor, sonuç yalnızca belirtilen e-posta adresine sahip olan tüm kullanıcıları değil, tüm kullanıcıları da içeriyor. Başlıklar gayet iyi (aksi halde hiç kullanıcı almayacaktım).
eksik musunuz şey? Yöntem çözülemiyor. Görünüşe göre bu parametrelerle yapamam. – mosquito87
Hayır, org.springframework.http.HttpEntity', org.springframework.web.client.RestTemplate; kullanıyorum ve URI toString dönüştürürken –
yöntemini çözebilirim. Ancak aynı sonucu elde ediyorum (belirtilen kullanıcı yerine tüm kullanıcılar). – mosquito87