
full diff: https://github.com/emicklei/go-restful/compare/v2.9.5...v3.7.3 - Switch to using go modules - Add check for wildcard to fix CORS filter - Add check on writer to prevent compression of response twice - Add OPTIONS shortcut WebService receiver - Add Route metadata to request attributes or allow adding attributes to routes - Add wroteHeader set - Enable content encoding on Handle and ServeHTTP - Feat: support google custom verb - Feature: override list of method allowed without content-type - Fix Allow header not set on '405: Method Not Allowed' responses - Fix Go 1.15: conversion from int to string yields a string of one rune - Fix WriteError return value - Fix: use request/response resulting from filter chain - handle path params with prefixes and suffixes - HTTP response body was broken, if struct to be converted to JSON has boolean value - List available representations in 406 body - Support describing response headers - Unwrap function in filter chain + remove unused dispatchWithFilters Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
40 lines
1.2 KiB
Go
40 lines
1.2 KiB
Go
package restful
|
|
|
|
// Copyright 2013 Ernest Micklei. All rights reserved.
|
|
// Use of this source code is governed by a license
|
|
// that can be found in the LICENSE file.
|
|
|
|
import (
|
|
"net/http"
|
|
)
|
|
|
|
// DefaultContainer is a restful.Container that uses http.DefaultServeMux
|
|
var DefaultContainer *Container
|
|
|
|
func init() {
|
|
DefaultContainer = NewContainer()
|
|
DefaultContainer.ServeMux = http.DefaultServeMux
|
|
}
|
|
|
|
// If set the true then panics will not be caught to return HTTP 500.
|
|
// In that case, Route functions are responsible for handling any error situation.
|
|
// Default value is false = recover from panics. This has performance implications.
|
|
// OBSOLETE ; use restful.DefaultContainer.DoNotRecover(true)
|
|
var DoNotRecover = false
|
|
|
|
// Add registers a new WebService add it to the DefaultContainer.
|
|
func Add(service *WebService) {
|
|
DefaultContainer.Add(service)
|
|
}
|
|
|
|
// Filter appends a container FilterFunction from the DefaultContainer.
|
|
// These are called before dispatching a http.Request to a WebService.
|
|
func Filter(filter FilterFunction) {
|
|
DefaultContainer.Filter(filter)
|
|
}
|
|
|
|
// RegisteredWebServices returns the collections of WebServices from the DefaultContainer
|
|
func RegisteredWebServices() []*WebService {
|
|
return DefaultContainer.RegisteredWebServices()
|
|
}
|