在Sinatra中,如何覆蓋響應中的Content-Length
標題以設置我自己的值?使用Rack/Sinatra覆蓋內容長度標題
在我的方法的最後一行返回如下:
[200, {'Content-Type' => component.content_type,
'Content-Length' => component.content_length.to_s}, component.content.data]
這樣,我希望能覆蓋內容的價值,但它導致異常:
Unexpected error while processing request: Content-Length header was 2, but should be 0
我想爲內容長度返回不同的值。有沒有辦法做到這一點?
爲什麼你想覆蓋內容長度 - 這肯定只會導致問題。這種行爲取決於您使用的是哪個服務器(我無法重現您在Sinatra使用的任何默認服務器上看到的錯誤)。你想做什麼? – matt
在這種情況下,用戶代理是一個查詢數據並期待文檔長度而不是文檔本身的SAP系統,即它正在以它自己的方式解釋數據。我使用Thin,如果這有什麼區別的話,儘管我認爲Rack正在處理內容長度的添加,據我瞭解,它有一箇中間件,我還沒有完全理解。 – mydoghasworms