Просто возился с Синатрой и пытался запустить немного спокойного веб-сервиса.Ошибка, которую я получаю в данный момент, очень специфична.
Возьмите этот пример метода сообщения
post '/postMan/:someParam' do
#Edited here. This code can be anything. 411 is still the response
puts params[:someParam]
end
Кажется достаточно простым.Возьмите параметр, сделайте из него объект, затем сохраните его любым способом, который определяет метод сохранения объектов.
Вот что я использую для публикации данных с помощью Curl
$curl -I -X POST http://127.0.0.1/postman/123456
* 1010Единственная проблема, я получаю 411 обратно и понятия не имею, почему.Насколько я знаю, 411 требуется длина.Вот след
HTTP/1.1 411 Length Required
Content-Type: text/html; charset=ISO-8859-1
Server: WEBrick/1.3.1 (Ruby/1.9.2/2011-07-09)
Date: Fri, 02 Mar 2012 22:27:09 GMT
Content-Length: 303
Connection: close
Я не могу изменить сообщение curl любым способом.Так может ли кто-нибудь иметь способ установить длину содержимого, которое будет игнорироваться в sinatra?Или какое-то исправление, которое не включает изменение запроса curl?
Для записи не имеет значения, использую ли я параметры в методе Post или нет.Я мог бы иметь какой-то сумасшедший код внутри, он все равно выдаст ту же ошибку