CompatVersion is the default CouchDB compatibility provided by this package.
const CompatVersion = "0.0.0"
func DB(r *http.Request) string
DB returns the db name in this request, or "" if none.
Handler is a CouchDB server handler.
type Handler struct { // CompatVersion is the CouchDB compatibility version to report. If unset, // defaults to the CompatVersion constant/. CompatVersion string // Vendor is the vendor name to report. If unset, defaults to the // kivik.Vendor constant. Vendor string // VendorVersion is the vendor version to report. If unset, defaults to the // kivik.VendorVersion constant. VendorVersion string Logger *log.Logger // Favicon is the path to a favicon.ico to serve. Favicon string // SessionKey is a temporary solution to avoid import cycles. Soon I will move the key to another package. SessionKey interface{} // contains filtered or unexported fields }
func NewHandler(client *kivik.Client) *Handler
NewHandler returns a CouchDB server handler.
func (h *Handler) Flush() http.HandlerFunc
Flush handles POST /{db}/_ensure_full_commit
func (h *Handler) GetAllDBs() http.HandlerFunc
GetAllDBs handles GET /_all_dbs
func (h *Handler) GetDB() http.HandlerFunc
GetDB handles GET /{db}
func (h *Handler) GetFavicon() http.HandlerFunc
GetFavicon serves GET /favicon.ico
func (h *Handler) GetRoot() http.HandlerFunc
GetRoot handles requests for: GET /
func (h *Handler) GetSession() http.HandlerFunc
GetSession serves GET /_session
func (h *Handler) HandleError(w http.ResponseWriter, err error)
HandleError returns a CouchDB-formatted error. It does nothing if err is nil.
func (h *Handler) HeadDB() http.HandlerFunc
HeadDB handles HEAD /{db}
func (h *Handler) Main() http.Handler
Main returns an http.Handler to handle all CouchDB endpoints.
func (h *Handler) PutDB() http.HandlerFunc
PutDB handles PUT /{db}