HttpClient, как передать параметры заголовка запроса JSON как переменную, используя Java - PullRequest
0 голосов
/ 23 сентября 2018
HttpClient httpclient = HttpClientBuilder.create().build(); 
String authHeader = "Basic dGVzdDpwYXNzd29yZA=="; 
String tsr_id = "NL_EAMP_NL1392"; 
String SIDate = "{\"configuration\":{\"tsrId\":" + tsr_id + ",\"relatedRef\":null,\"validTsrId\":false,\"startDate\":\"2013-12-19\",\"stopDate\":\"2045-01-01\",\"calculationConfigurations\":[{\"id\":null,\"tsrId\":" + tsr_id + ",\"startDate\":\"2008-08-01\",\"stopDate\":\"3000-01-01\",\"scheduleOverrides\":{\"1\":false,\"2\":false,\"7\":false,\"8\":false,\"9\":false,\"10D\":true,\"10E\":true,\"10F\":true,\"23D\":false,\"23E\":false,\"23F\":false,\"26\":false,\"33\":false,\"41\":false,\"42A\":false,\"42B\":false,\"45\":false}}],\"priceZoneConfigurations\":[],\"attributeConfigurations\":[],\"flagConfigurations\":[]},\"note\":\"\"}"; 
HttpPost request = new HttpPost("http:url/configurations"); 
request.setHeader(HttpHeaders.AUTHORIZATION, authHeader); request.setHeader("Content-type", "application/json"); 
StringEntity entity = new StringEntity(SIDate); 
request.setEntity(entity);
HttpResponse resp = httpclient.execute(request); 
int status; 
status = resp.getStatusLine().getStatusCode(); 
assert status == 200;

Это моя java-программа для установки флагов, упомянутых в SIDate (параметр payload / request).когда я жестко кодирую NL_EAMP_NL1392 (tsr_id), запрос на публикацию работает нормально.Но я объявляю и передаю его как переменную. Я получаю ошибку Bad Request 400.Как я могу передать tsr_id вместо NL_EAMP_NL1392 для запроса параметров.ТИА

...