Вот мой код для запуска запроса POSTJetty POST запрос код возвращения ошибки 411
// Instantiate HttpClient
HttpClient httpClient = new HttpClient();
// Configure HttpClient, for example:
httpClient.setFollowRedirects(false);
// Start HttpClient
httpClient.start();
ContentResponse response = httpClient.POST("url")
.agent("Mozilla/5.0")
.method(HttpMethod.POST)
.param("do","login")
.param("url","")
.param("vb_login_md5password", this.password)
.param("vb_login_md5password_utf", this.password)
.param("s", "")
.param("vb_login_username", this.username)
.param("vb_login_password", "")
.send();
for(HttpField h : response.getHeaders())
System.out.println(h.getName() + " = " + h.getValue());
Здесь выход
Date = Mon, 14 Dec 2015 08:17:08 GMT
Content-Type = text/html
Transfer-Encoding = chunked
Connection = keep-alive
Set-Cookie = __cfduid=dbb11c371945319b1d5943aad06c1977e1450081028; expires=Tue, 13-Dec-16 08:17:08 GMT; path=/; domain=.sythe.org; HttpOnly
Server = cloudflare-nginx
CF-RAY = 2548787ba9dc21b6-EWR
Я смотрю на текст ContentResponse запроса пост, делая
response.getContentAsString()
Однако по какой-то причине я продолжаю получать ошибку 411, которая говорит мне, что мой Content-Length равен нулю или не соответствует спецификации маньяки. Есть ли способ установить заголовок длины содержимого сообщения?
Спасибо!
EDIT: Делать это не делает никакой разницы в моем почтовом запросе
.header(HttpHeader.CONTENT_LENGTH, "0")
Можете ли вы дать версию и полное имя класса для HttpClient? Там их так много ... – Jan
Эй, Ян. Спасибо за ответ! Я использую Jetty-9, который использует этот класс в качестве своего httpclient «import org.eclipse.jetty.client.HttpClient;». Я не уверен на 100%, я понимаю вопрос, если вам что-то еще нужно, пожалуйста, lmk – k9b