本文整理汇总了Golang中github.com/go-swagger/go-swagger/spec.Document.Host方法的典型用法代码示例。如果您正苦于以下问题:Golang Document.Host方法的具体用法?Golang Document.Host怎么用?Golang Document.Host使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/go-swagger/go-swagger/spec.Document
的用法示例。
在下文中一共展示了Document.Host方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: New
// New creates a new default runtime for a swagger api client.
func New(swaggerSpec *spec.Document) *Runtime {
var rt Runtime
rt.DefaultMediaType = httpkit.JSONMime
// TODO: actually infer this stuff from the spec
rt.Consumers = map[string]httpkit.Consumer{
httpkit.JSONMime: httpkit.JSONConsumer(),
}
rt.Producers = map[string]httpkit.Producer{
httpkit.JSONMime: httpkit.JSONProducer(),
}
rt.Spec = swaggerSpec
rt.Transport = http.DefaultTransport
rt.client = http.DefaultClient
rt.client.Transport = rt.Transport
rt.Host = swaggerSpec.Host()
rt.BasePath = swaggerSpec.BasePath()
schemes := swaggerSpec.Spec().Schemes
if len(schemes) == 0 {
schemes = append(schemes, "http")
}
rt.methodsAndPaths = make(map[string]methodAndPath)
for mth, pathItem := range rt.Spec.Operations() {
for pth, op := range pathItem {
if len(op.Schemes) > 0 {
rt.methodsAndPaths[op.ID] = methodAndPath{mth, pth, op.Schemes}
} else {
rt.methodsAndPaths[op.ID] = methodAndPath{mth, pth, schemes}
}
}
}
return &rt
}
示例2: New
// New creates a new default runtime for a swagger api client.
func New(swaggerSpec *spec.Document) *Runtime {
var rt Runtime
rt.DefaultMediaType = httpkit.JSONMime
rt.Consumers = map[string]httpkit.Consumer{
httpkit.JSONMime: httpkit.JSONConsumer(),
}
rt.Producers = map[string]httpkit.Producer{
httpkit.JSONMime: httpkit.JSONProducer(),
}
rt.Spec = swaggerSpec
rt.Transport = http.DefaultTransport
rt.client = http.DefaultClient
rt.Host = swaggerSpec.Host()
rt.BasePath = swaggerSpec.BasePath()
rt.methodsAndPaths = make(map[string]methodAndPath)
for mth, pathItem := range rt.Spec.Operations() {
for pth, op := range pathItem {
rt.methodsAndPaths[op.ID] = methodAndPath{mth, pth}
}
}
return &rt
}
示例3: New
// New creates a new default runtime for a swagger api client.
func New(swaggerSpec *spec.Document) *Runtime {
var rt Runtime
rt.DefaultMediaType = httpkit.JSONMime
// TODO: actually infer this stuff from the spec
rt.Consumers = map[string]httpkit.Consumer{
httpkit.JSONMime: httpkit.JSONConsumer(),
}
rt.Producers = map[string]httpkit.Producer{
httpkit.JSONMime: httpkit.JSONProducer(),
}
rt.Spec = swaggerSpec
rt.Transport = http.DefaultTransport
rt.client = http.DefaultClient
rt.client.Transport = rt.Transport
rt.Host = swaggerSpec.Host()
rt.BasePath = swaggerSpec.BasePath()
if !strings.HasPrefix(rt.BasePath, "/") {
rt.BasePath = "/" + rt.BasePath
}
rt.Debug = os.Getenv("DEBUG") == "1"
schemes := swaggerSpec.Spec().Schemes
if len(schemes) == 0 {
schemes = append(schemes, "http")
}
rt.methodsAndPaths = make(map[string]methodAndPath)
for mth, pathItem := range rt.Spec.Operations() {
for pth, op := range pathItem {
nm := ensureUniqueName(op.ID, mth, pth, rt.methodsAndPaths)
op.ID = nm
if len(op.Schemes) > 0 {
rt.methodsAndPaths[nm] = methodAndPath{mth, pth, op.Schemes}
} else {
rt.methodsAndPaths[nm] = methodAndPath{mth, pth, schemes}
}
}
}
return &rt
}