goji: github.com/zenazn/goji Index | Files | Directories

package goji

import "github.com/zenazn/goji"

Package goji provides an out-of-box web server with reasonable defaults.

Example:

package main

import (
	"fmt"
	"net/http"

	"github.com/zenazn/goji"
	"github.com/zenazn/goji/web"
)

func hello(c web.C, w http.ResponseWriter, r *http.Request) {
	fmt.Fprintf(w, "Hello, %s!", c.URLParams["name"])
}

func main() {
	goji.Get("/hello/:name", hello)
	goji.Serve()
}

This package exists purely as a convenience to programmers who want to get started as quickly as possible. It draws almost all of its code from goji's subpackages, the most interesting of which is goji/web, and where most of the documentation for the web framework lives.

A side effect of this package's ease-of-use is the fact that it is opinionated. If you don't like (or have outgrown) its opinions, it should be straightforward to use the APIs of goji's subpackages to reimplement things to your liking. Both methods of using this library are equally well supported.

Goji requires Go 1.2 or newer.

Index

Package Files

default.go goji.go serve.go

Variables

var DefaultMux *web.Mux

The default web.Mux.

func Abandon Uses

func Abandon(middleware web.MiddlewareType) error

Abandon removes the given middleware from the default Mux's middleware stack. See the documentation for web.Mux.Abandon for more information.

func Connect Uses

func Connect(pattern web.PatternType, handler web.HandlerType)

Connect adds a CONNECT route to the default Mux. See the documentation for web.Mux for more information about what types this function accepts.

func Delete Uses

func Delete(pattern web.PatternType, handler web.HandlerType)

Delete adds a DELETE route to the default Mux. See the documentation for web.Mux for more information about what types this function accepts.

func Get Uses

func Get(pattern web.PatternType, handler web.HandlerType)

Get adds a GET route to the default Mux. See the documentation for web.Mux for more information about what types this function accepts.

func Handle Uses

func Handle(pattern web.PatternType, handler web.HandlerType)

Handle adds a route to the default Mux. See the documentation for web.Mux for more information about what types this function accepts.

func Head(pattern web.PatternType, handler web.HandlerType)

Head adds a HEAD route to the default Mux. See the documentation for web.Mux for more information about what types this function accepts.

func Insert Uses

func Insert(middleware, before web.MiddlewareType) error

Insert the given middleware into the default Mux's middleware stack. See the documentation for web.Mux.Insert for more information.

func NotFound Uses

func NotFound(handler web.HandlerType)

NotFound sets the NotFound handler for the default Mux. See the documentation for web.Mux.NotFound for more information.

func Options Uses

func Options(pattern web.PatternType, handler web.HandlerType)

Options adds a OPTIONS route to the default Mux. See the documentation for web.Mux for more information about what types this function accepts.

func Patch Uses

func Patch(pattern web.PatternType, handler web.HandlerType)

Patch adds a PATCH route to the default Mux. See the documentation for web.Mux for more information about what types this function accepts.

func Post Uses

func Post(pattern web.PatternType, handler web.HandlerType)

Post adds a POST route to the default Mux. See the documentation for web.Mux for more information about what types this function accepts.

func Put Uses

func Put(pattern web.PatternType, handler web.HandlerType)

Put adds a PUT route to the default Mux. See the documentation for web.Mux for more information about what types this function accepts.

func Serve Uses

func Serve()

Serve starts Goji using reasonable defaults.

func ServeListener Uses

func ServeListener(listener net.Listener)

Like Serve, but runs Goji on top of an arbitrary net.Listener.

func ServeTLS Uses

func ServeTLS(config *tls.Config)

Like Serve, but enables TLS using the given config.

func Trace Uses

func Trace(pattern web.PatternType, handler web.HandlerType)

Trace adds a TRACE route to the default Mux. See the documentation for web.Mux for more information about what types this function accepts.

func Use Uses

func Use(middleware web.MiddlewareType)

Use appends the given middleware to the default Mux's middleware stack. See the documentation for web.Mux.Use for more information.

Directories

PathSynopsis
bindPackage bind provides a convenient way to bind to sockets.
exampleCommand example is a sample application built with Goji.
gracefulPackage graceful implements graceful shutdown for HTTP servers by closing idle connections after receiving a signal.
graceful/listenerPackage listener provides a way to incorporate graceful shutdown to any net.Listener.
webPackage web provides a fast and flexible middleware stack and mux.
web/middlewarePackage middleware provides several standard middleware implementations.
web/mutilPackage mutil contains various functions that are helpful when writing http middleware.

Package goji imports 10 packages (graph) and is imported by 338 packages. Updated 2019-06-02. Refresh now. Tools for package owners.