2021-10-02 18:54:06 +08:00
|
|
|
// Copyright GoFrame Author(https://goframe.org). All Rights Reserved.
|
|
|
|
//
|
|
|
|
// This Source Code Form is subject to the terms of the MIT License.
|
|
|
|
// If a copy of the MIT was not distributed with this file,
|
|
|
|
// You can obtain one at https://github.com/gogf/gf.
|
|
|
|
|
2021-10-02 14:52:28 +08:00
|
|
|
package goai
|
|
|
|
|
|
|
|
import (
|
|
|
|
"github.com/gogf/gf/internal/json"
|
|
|
|
)
|
|
|
|
|
|
|
|
// Response is specified by OpenAPI/Swagger 3.0 standard.
|
|
|
|
type Response struct {
|
|
|
|
Description string `json:"description" yaml:"description"`
|
|
|
|
Headers Headers `json:"headers,omitempty" yaml:"headers,omitempty"`
|
|
|
|
Content Content `json:"content,omitempty" yaml:"content,omitempty"`
|
|
|
|
Links Links `json:"links,omitempty" yaml:"links,omitempty"`
|
|
|
|
}
|
|
|
|
|
|
|
|
// Responses is specified by OpenAPI/Swagger 3.0 standard.
|
|
|
|
type Responses map[string]ResponseRef
|
|
|
|
|
|
|
|
type ResponseRef struct {
|
|
|
|
Ref string
|
|
|
|
Value *Response
|
|
|
|
}
|
|
|
|
|
|
|
|
func (r ResponseRef) MarshalJSON() ([]byte, error) {
|
|
|
|
if r.Ref != "" {
|
2021-10-02 18:54:06 +08:00
|
|
|
return formatRefToBytes(r.Ref), nil
|
2021-10-02 14:52:28 +08:00
|
|
|
}
|
|
|
|
return json.Marshal(r.Value)
|
|
|
|
}
|