所以我有必須知道什麼是請求體內MyHandler的一個:讀取請求主體,而不刪除它
class MyHandler
include HTTP::Handler
def call(context)
p "MyHandler got body: " + context.request.body.not_nil!.gets_to_end
call_next(context)
end
end
server = HTTP::Server.new(42, [MyHandler.new]) do |context|
p "Server got body: " + context.request.body.not_nil!.gets_to_end
end
正如預期的那樣,MyHandler
已經閱讀後,服務器收到一個空體。如何在不修改原始上下文的情況下複製正文?
未定義的方法'#重置',你的意思是'#rewind'?必須在'IO.copy'之後添加另一個'body_io.rewind'才能使其工作。謝謝! P.S:請更新您對未來用戶的回答;) –
@VladFaust謝謝您收到該錯誤! – RX14