2015-10-10 2 views
1

Я пытаюсь получить код ответа сервера с кодом следующего:Vibed: ошибка: 411 Длина Обязательный

import std.stdio; 
import vibe.core.log; 
import vibe.http.client; 
import vibe.stream.operations; 
import vibe.http.status; 

void main() 
{ 
     requestHTTP("http://www.example.org/", (scope req) { 
      req.method = HTTPMethod.POST; 
     }, 
     (scope res) { 
      logInfo("Response: %s", res.statusCode); 
     } 
    ); 
} 

Но я получаю код ответа 411, что средний «Length Required». Что я делаю неправильно?

ответ

2

Проблема была решена с использованием: req.method = HTTPMethod.GET; вместо POST метод.

+1

Скорее всего, это потому, что сервер ожидает, что запросы 'POST' будут иметь фактический заголовок тела и/или' Content-Length', и вы не укажете в приведенном выше примере. –

+1

http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.12 – Bauss