TapirStaticContentEndpoints

Static content endpoints, including files and resources.

class Object
trait Matchable
class Any
trait Tapir

Value members

Concrete methods

def fileServerEndpoint[F[_]](path: EndpointInput[Unit])(systemPath: String): ServerEndpoint[StaticInput, StaticErrorOutput, StaticOutput[File], Any, F]

A server endpoint, which exposes a single file from local storage found at systemPath, using the given path.

A server endpoint, which exposes a single file from local storage found at systemPath, using the given path.

fileServerEndpoint("static" / "hello.html")("/home/app/static/data.html")
def filesServerEndpoint[F[_]](prefix: EndpointInput[Unit])(systemPath: String): ServerEndpoint[StaticInput, StaticErrorOutput, StaticOutput[File], Any, F]

A server endpoint, which exposes files from local storage found at systemPath, using the given prefix. Typically, the prefix is a path, but it can also contain other inputs. For example:

A server endpoint, which exposes files from local storage found at systemPath, using the given prefix. Typically, the prefix is a path, but it can also contain other inputs. For example:

filesServerEndpoint("static" / "files")("/home/app/static")

A request to /static/files/css/styles.css will try to read the /home/app/static/css/styles.css file.

def resourceServerEndpoint[F[_]](prefix: EndpointInput[Unit])(classLoader: ClassLoader, resourcePath: String): ServerEndpoint[StaticInput, StaticErrorOutput, StaticOutput[InputStream], Any, F]

A server endpoint, which exposes a single resource available from the given classLoader at resourcePath, using the given path.

A server endpoint, which exposes a single resource available from the given classLoader at resourcePath, using the given path.

resourceServerEndpoint("static" / "hello.html")(classOf[App].getClassLoader, "app/data.html")
def resourcesServerEndpoint[F[_]](prefix: EndpointInput[Unit])(classLoader: ClassLoader, resourcePrefix: String): ServerEndpoint[StaticInput, StaticErrorOutput, StaticOutput[InputStream], Any, F]

A server endpoint, which exposes resources available from the given classLoader, using the given prefix. Typically, the prefix is a path, but it can also contain other inputs. For example:

A server endpoint, which exposes resources available from the given classLoader, using the given prefix. Typically, the prefix is a path, but it can also contain other inputs. For example:

resourcesServerEndpoint("static" / "files")(classOf[App].getClassLoader, "app")

A request to /static/files/css/styles.css will try to read the /app/css/styles.css resource.