Когда я передаю тело в GET-запросе нижеприведенному API, он выбрасывает неверный запрос 400. Если я прохожу через клиента Feign, метод его вызова не найден, он внутренне преобразует GET-запрос в POST-запрос. Можете ли вы предложить, что возможные способы я могу сделать? кроме изменения запроса на POST
API
@GetMapping("/users")
@ApiOperation(value = "Retrieve users by role names list", notes = "Retrieves users by role name or role names passed in the list")
@ApiResponses(value = { @ApiResponse(code = 404, message = "ROLE_NOT_FOUND") })
public PagedResources<Resource<UserResponse>> retrieveUsersByRoleNames(@RequestBody RoleNameRequest roleNameRequest,
@RequestParam(name = "includeLocked", required = false) Boolean locked,
@RequestParam(name = "excludeUserId", required = false) String userId,
@RequestParam(name = "includeDeleted", required = false) Boolean isDeleted,
Pageable page,
PagedResourcesAssembler<UserResponse> pagedAssembler) {
Subscription subscription = serviceUtility.fetchSubscription();
Page<UserResponse> pageUserResponse = roleService.findAllByRoleNames(roleNameRequest, locked, isDeleted, userId, subscription,page)
.map(userAttribute -> ModelConverter.modelResponse(userAttribute, true));
log.info("pageUserResponse : " + pageUserResponse);
log.info("pageUserResponse.getTotalElements() : " + pageUserResponse.getTotalElements());
log.info("page details size for roleNames list: " + pageUserResponse.getContent().size());
log.info("page details values for roleNames list: " + pageUserResponse.getContent().toString());
return pagedAssembler.toResource(pageUserResponse);
}
Request
RoleNameRequest roleNameRequest = new RoleNameRequest();
roleNameRequest.setRoleNames(identity.getPrimaryRoles());
List<UserResponseWithWorkload> usersWithWorkload = null;
try {
log.info("Pager Details : " + pageable.toString());
log.info("subscriptionId : " + subscriptionId);
causing exception -> resources = securityServiceFeignClient.retrieveUsersByMultipleRoles(roleNameRequest,
subscriptionId, pageable.getPageNumber(), pageable.getPageSize(),userId);
usersWithWorkload = getUsersWithWorkload(resources.getContent().toArray(),
workload, identity.getActivityId(), identity.getAssignmentMode());
log.info(" Resource from security service : " + resources.getContent().toString());
log.info(" Resource size from security service : " + resources.getContent().size());
log.info(" Resource array from security service : " + resources.getContent().toArray());
} catch (Exception e) {
log.error(e.getMessage(), e);
}