Я просто пытаюсь отправить учетные данные в службу поддержки, которая принимает имя пользователя и пароль json и возвращает токен доступа. Независимо от того, что я пытаюсь, я получаю ошибку 400, и ошибка, возвращаемая с сервера, - «Должен поставлять тело». Вот последний отрывок я попробовал:Как установить тело на верблюде apache http POST-запрос
@Component
public class LoginRoute extends RouteBuilder {
@Override
public void configure() throws Exception {
String jsonCredentials = "{\"username\":\"username\",\"password\":\"password\",\"grant_type\":\"password\",\"scope\":\"admin\"}";
from("timer://login?repeatCount=1")
.setBody(constant(jsonCredentials))
.setHeader(Exchange.HTTP_METHOD, constant(org.apache.camel.component.http4.HttpMethods.POST))
.to("http://URL");
}
}
Я подтвердил мои полномочия прекрасно работают в Почтальон и получить соответствующий ответ с маркером доступа. Я считаю, что служба, с которой я пытаюсь подключиться, использует Oauth2.
сделал вы пытаетесь установить заголовок типа содержимого ?: .setHeader (Exchange.CONTENT_TYPE, константа ("применение/JSON")); – robert