mirror of
https://gitea.invidious.io/iv-org/shard-kemal.git
synced 2024-08-15 00:53:36 +00:00
Add Date
header to HTTP responses (#676)
This commit is contained in:
parent
7c47bbc150
commit
b074578c1a
2 changed files with 15 additions and 0 deletions
|
@ -11,6 +11,18 @@ describe "Kemal::InitHandler" do
|
|||
context.response.headers["Content-Type"].should eq "text/html"
|
||||
end
|
||||
|
||||
it "initializes context with Date header" do
|
||||
request = HTTP::Request.new("GET", "/")
|
||||
io = IO::Memory.new
|
||||
response = HTTP::Server::Response.new(io)
|
||||
context = HTTP::Server::Context.new(request, response)
|
||||
Kemal::InitHandler::INSTANCE.next = ->(_context : HTTP::Server::Context) {}
|
||||
Kemal::InitHandler::INSTANCE.call(context)
|
||||
date = context.response.headers["Date"]?.should_not be_nil
|
||||
date = HTTP.parse_time(date).should_not be_nil
|
||||
date.should be_close(Time.utc, 1.second)
|
||||
end
|
||||
|
||||
it "initializes context with X-Powered-By: Kemal" do
|
||||
request = HTTP::Request.new("GET", "/")
|
||||
io = IO::Memory.new
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
require "http"
|
||||
|
||||
module Kemal
|
||||
# Initializes the context with default values, such as
|
||||
# *Content-Type* or *X-Powered-By* headers.
|
||||
|
@ -9,6 +11,7 @@ module Kemal
|
|||
def call(context : HTTP::Server::Context)
|
||||
context.response.headers.add "X-Powered-By", "Kemal" if Kemal.config.powered_by_header?
|
||||
context.response.content_type = "text/html" unless context.response.headers.has_key?("Content-Type")
|
||||
context.response.headers.add "Date", HTTP.format_time(Time.utc)
|
||||
call_next context
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Reference in a new issue