class HTTP::StaticFileHandler
Overview
A handler that lists directories and serves files under a given public directory.
This handler can send precompressed content, if the client accepts it, and a file with the same name and .gz
extension appended is found in the same directory. Precompressed files are only served if they are newer than the original file.
Included Modules
Defined in:
http/server/handlers/static_file_handler.crConstructors
- .new(public_dir : String, fallthrough = true, directory_listing = true)
Creates a handler that will serve files in the given public_dir, after expanding it (using
File#expand_path
).
Instance Method Summary
Instance methods inherited from module HTTP::Handler
call(context : HTTP::Server::Context) call, call_next(context : HTTP::Server::Context) call_next, next : Handler | HandlerProc | Nil next, next=(next __arg0 : Handler | HandlerProc | Nil) next= Instance methods inherited from class Reference
==(other : self)==(other : JSON::Any)
==(other : YAML::Any)
==(other) ==, dup dup, hash(hasher) hash, inspect(io : IO) : Nil inspect, object_id : UInt64 object_id, pretty_print(pp) : Nil pretty_print, same?(other : Reference) : Bool
same?(other : Nil) same?, to_s(io : IO) : Nil to_s
Constructor methods inherited from class Reference
new new Instance methods inherited from class Object
! : Bool !, !=(other) !=, !~(other) !~, ==(other) ==, ===(other : JSON::Any)===(other : YAML::Any)
===(other) ===, =~(other) =~, as(type : Class) as, as?(type : Class) as?, class class, dup dup, hash(hasher)
hash hash, in?(collection : Object) : Bool
in?(*values : Object) : Bool in?, inspect(io : IO) : Nil
inspect : String inspect, is_a?(type : Class) : Bool is_a?, itself itself, nil? : Bool nil?, not_nil! not_nil!, pretty_inspect(width = 79, newline = "\n", indent = 0) : String pretty_inspect, pretty_print(pp : PrettyPrint) : Nil pretty_print, responds_to?(name : Symbol) : Bool responds_to?, tap(&) tap, to_json(io : IO) : Nil
to_json : String to_json, to_pretty_json(indent : String = " ") : String
to_pretty_json(io : IO, indent : String = " ") : Nil to_pretty_json, to_s(io : IO) : Nil
to_s : String to_s, to_yaml(io : IO) : Nil
to_yaml : String to_yaml, try(&) try, unsafe_as(type : T.class) forall T unsafe_as
Class methods inherited from class Object
from_json(string_or_io, root : String)from_json(string_or_io) from_json, from_yaml(string_or_io : String | IO) from_yaml
Constructor Detail
def self.new(public_dir : String, fallthrough = true, directory_listing = true)Source
Creates a handler that will serve files in the given public_dir, after expanding it (using File#expand_path
).
If fallthrough is false
, this handler does not call next handler when request method is neither GET or HEAD, then serves 405 Method Not Allowed
. Otherwise, it calls next handler.
If directory_listing is false
, directory listing is disabled. This means that paths matching directories are ignored and next handler is called.
Instance Method Detail
© 2012–2021 Manas Technology Solutions.
Licensed under the Apache License, Version 2.0.
https://crystal-lang.org/api/1.2.1/HTTP/StaticFileHandler.html