package
4.0.0-beta2+incompatible
Repository: https://github.com/splunk/openapi-generator.git
Documentation: pkg.go.dev
# README
Go API Server for petstoreserver
This is a sample server Petstore server. For this sample, you can use the api key special-key
to test the authorization filters.
Overview
This server was generated by the [openapi-generator] (https://openapi-generator.tech) project. By using the OpenAPI-Spec from a remote server, you can easily generate a server stub.
To see how to make this your own, look here:
- API version: 1.0.0
Running the server
To run the server, follow these simple steps:
go run main.go
To run the server in a docker container
docker build --network=host -t petstoreserver .
Once image is built use
docker run --rm -it petstoreserver
Known Issue
The endpoint /v2/pet/findByTags
and /v2/pet/:petId
are conflict with gin.
This is a known issue of gin. Please refer gin-gonic/gin#388
You can manually fix it by updating the path and handler. Please refer gin-gonic/gin/issues/205#issuecomment-296155497 and an example below.
routers.go
var routes = Routes{
{
"Index",
"GET",
"/v2/",
Index,
},
- {
- "FindPetsByTags",
- strings.ToUpper("Get"),
- "/v2/pet/findByTags",
- FindPetsByTags,
- },
{
"GetPetById",
strings.ToUpper("Get"),
"/v2/pet/:petId",
GetPetById,
},
}
api_pet.go
// GetPetById - Find pet by ID
func GetPetById(c *gin.Context) {
- c.JSON(http.StatusOK, gin.H{})
+ petId := c.Param("petId")
+
+ if petId == "findByTags" {
+ FindPetsByTags(c)
+ } else {
+ c.JSON(http.StatusOK, gin.H{})
+ }
}
# Functions
AddPet - Add a new pet to the store.
CreateUser - Create user.
CreateUsersWithArrayInput - Creates list of users with given input array.
CreateUsersWithListInput - Creates list of users with given input array.
DeleteOrder - Delete purchase order by ID.
DeletePet - Deletes a pet.
DeleteUser - Delete user.
FindPetsByStatus - Finds Pets by status.
FindPetsByTags - Finds Pets by tags.
GetInventory - Returns pet inventories by status.
GetOrderById - Find purchase order by ID.
GetPetById - Find pet by ID.
GetUserByName - Get user by user name.
Index is the index handler.
LoginUser - Logs user into the system.
LogoutUser - Logs out current logged in user session.
NewRouter returns a new router.
PlaceOrder - Place an order for a pet.
UpdatePet - Update an existing pet.
UpdatePetWithForm - Updates a pet in the store with form data.
UpdateUser - Updated user.
UploadFile - uploads an image.
# Structs
ApiResponse - Describes the result of uploading an image resource.
Category - A category for a pet.
Order - An order for a pets from the pet store.
Pet - A pet for sale in the pet store.
Route is the information for every URI.
Tag - A tag for a pet.
User - A User who is purchasing from the pet store.
# Type aliases
Routes is the list of the generated Route.