파일 등록 api 요청 시 400 bad request 에러가 나오는데
어떤 부분이 잘못 됬는지 모르겠네요.
아래는 소스입니다.
답변 부탁드립니다.
public int createUserFile(String file_nm) throws Exception
{
logger.debug("KakaoSyncService.createUserFile:::kakao_sync_url=[{}]", kakao_sync_url);
logger.debug("KakaoSyncService.createUserFile:::file_nm=[{}]", file_nm);
int file_id = -1;
ObjectMapper objectMapper = new ObjectMapper();
MultiValueMap<String, Object> parameters = new LinkedMultiValueMap<>();
Map<String, String> schema_data = new HashMap<>();
parameters.add("channel_public_id", public_id);
parameters.add("file_name", file_nm);
schema_data.put("앱유저아이디", "string");
schema_data.put("이름", "string");
schema_data.put("생년월일", "string");
schema_data.put("지역", "string");
schema_data.put("성별", "string");
schema_data.put("연령", "number");
schema_data.put("구매금액", "number");
schema_data.put("가입일", "string");
schema_data.put("최근구매일", "string");
parameters.add("schema", schema_data);
logger.debug("parameters:::{}", parameters.toString());
try
{
RestTemplate restTemplate = new RestTemplate();
ResponseEntity<String> responseEntity = restTemplate.postForEntity(kakao_sync_url, makeHaederRequest(parameters), String.class);
logger.debug("responseEntity:::{}", responseEntity);
if (responseEntity.getStatusCode() == HttpStatus.OK) {
SOMap body = objectMapper.readValue(responseEntity.getBody(), new TypeReference<SOMap>(){});
logger.debug("responseEntity.body:::{}", body);
file_id = body.getDbInt("file_id");
logger.debug("file_id:::{}", file_id);
}
}
catch (Exception e)
{
logger.warn(e.getMessage(), e);
}
return file_id;
}
private HttpEntity<MultiValueMap<String, Object>> makeHaederRequest(MultiValueMap<String, Object> parameters)
{
logger.debug("authorization_key:::{}", authorization_key);
logger.debug("makeHaederRequest.parameters:::{}", parameters);
HttpHeaders headers = new HttpHeaders();
headers.add("Authorization", "KakaoAK " + authorization_key);
headers.setContentType(MediaType.APPLICATION_JSON);
logger.debug("headers:::{}", headers);
HttpEntity<MultiValueMap<String, Object>> request = new HttpEntity<>(parameters, headers);
return request;
}