本文整理匯總了Golang中github.com/go-swagger/go-swagger/httpkit.JSONProducer函數的典型用法代碼示例。如果您正苦於以下問題:Golang JSONProducer函數的具體用法?Golang JSONProducer怎麽用?Golang JSONProducer使用的例子?那麽, 這裏精選的函數代碼示例或許可以為您提供幫助。
在下文中一共展示了JSONProducer函數的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1: configureAPI
func configureAPI(api *operations.TodoListAPI) http.Handler {
// configure the api here
api.ServeError = errors.ServeError
api.JSONConsumer = httpkit.JSONConsumer()
api.JSONProducer = httpkit.JSONProducer()
api.KeyAuth = func(token string) (interface{}, error) {
return nil, errors.NotImplemented("api key auth (key) x-petstore-token from header has not yet been implemented")
}
api.TodosAddOneHandler = todos.AddOneHandlerFunc(func(params todos.AddOneParams, principal interface{}) middleware.Responder {
return middleware.NotImplemented("operation todos.AddOne has not yet been implemented")
})
api.TodosDestroyOneHandler = todos.DestroyOneHandlerFunc(func(params todos.DestroyOneParams, principal interface{}) middleware.Responder {
return middleware.NotImplemented("operation todos.DestroyOne has not yet been implemented")
})
api.TodosFindHandler = todos.FindHandlerFunc(func(params todos.FindParams, principal interface{}) middleware.Responder {
return middleware.NotImplemented("operation todos.Find has not yet been implemented")
})
api.TodosUpdateOneHandler = todos.UpdateOneHandlerFunc(func(params todos.UpdateOneParams, principal interface{}) middleware.Responder {
return middleware.NotImplemented("operation todos.UpdateOne has not yet been implemented")
})
api.ServerShutdown = func() {}
// api.CommandLineOptionsGroups = []swag.CommandLineOptionsGroup{ ... }
return setupGlobalMiddleware(api.Serve(setupMiddlewares))
}
示例2: configureAPI
func configureAPI(api *operations.EventListAPI) {
// configure the api here
api.ServeError = errors.ServeError
api.JSONConsumer = httpkit.JSONConsumer()
api.JSONProducer = httpkit.JSONProducer()
api.DeleteEventByIDHandler = events.DeleteEventByIDHandlerFunc(func(params events.DeleteEventByIDParams) middleware.Responder {
return middleware.NotImplemented("operation deleteEventById has not yet been implemented")
})
api.PostEventHandler = events.PostEventHandlerFunc(func(params events.PostEventParams) middleware.Responder {
return middleware.NotImplemented("operation postEvent has not yet been implemented")
})
api.GetEventByIDHandler = events.GetEventByIDHandlerFunc(func(params events.GetEventByIDParams) middleware.Responder {
return middleware.NotImplemented("operation getEventById has not yet been implemented")
})
api.GetEventsHandler = events.GetEventsHandlerFunc(func() middleware.Responder {
return middleware.NotImplemented("operation getEvents has not yet been implemented")
})
api.PutEventByIDHandler = events.PutEventByIDHandlerFunc(func(params events.PutEventByIDParams) middleware.Responder {
return middleware.NotImplemented("operation putEventById has not yet been implemented")
})
}
示例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()
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
}
示例4: configureAPI
func configureAPI(api *operations.EventListAPI) http.Handler {
// configure the api here
api.ServeError = errors.ServeError
api.JSONConsumer = httpkit.JSONConsumer()
api.JSONProducer = httpkit.JSONProducer()
api.EventsDeleteEventByIDHandler = events.DeleteEventByIDHandlerFunc(func(params events.DeleteEventByIDParams) middleware.Responder {
return middleware.NotImplemented("operation events.DeleteEventByID has not yet been implemented")
})
api.EventsGetEventByIDHandler = events.GetEventByIDHandlerFunc(func(params events.GetEventByIDParams) middleware.Responder {
return middleware.NotImplemented("operation events.GetEventByID has not yet been implemented")
})
api.EventsGetEventsHandler = events.GetEventsHandlerFunc(func() middleware.Responder {
return middleware.NotImplemented("operation events.GetEvents has not yet been implemented")
})
api.EventsPostEventHandler = events.PostEventHandlerFunc(func(params events.PostEventParams) middleware.Responder {
return middleware.NotImplemented("operation events.PostEvent has not yet been implemented")
})
api.EventsPutEventByIDHandler = events.PutEventByIDHandlerFunc(func(params events.PutEventByIDParams) middleware.Responder {
return middleware.NotImplemented("operation events.PutEventByID has not yet been implemented")
})
return setupGlobalMiddleware(api.Serve(setupMiddlewares))
}
示例5: configureAPI
func configureAPI(api *operations.TodoListAPI) http.Handler {
// configure the api here
api.ServeError = errors.ServeError
api.JSONConsumer = httpkit.JSONConsumer()
api.JSONProducer = httpkit.JSONProducer()
api.TodosAddOneHandler = todos.AddOneHandlerFunc(func(params todos.AddOneParams) middleware.Responder {
return middleware.NotImplemented("operation todos.AddOne has not yet been implemented")
})
api.TodosDestroyOneHandler = todos.DestroyOneHandlerFunc(func(params todos.DestroyOneParams) middleware.Responder {
return middleware.NotImplemented("operation todos.DestroyOne has not yet been implemented")
})
api.TodosFindTodosHandler = todos.FindTodosHandlerFunc(func(params todos.FindTodosParams) middleware.Responder {
return middleware.NotImplemented("operation todos.FindTodos has not yet been implemented")
})
api.TodosUpdateOneHandler = todos.UpdateOneHandlerFunc(func(params todos.UpdateOneParams) middleware.Responder {
return middleware.NotImplemented("operation todos.UpdateOne has not yet been implemented")
})
api.ServerShutdown = func() {}
// api.CommandLineOptionsGroups = []swag.CommandLineOptionsGroup{ ... }
return setupGlobalMiddleware(api.Serve(setupMiddlewares))
}
示例6: configureAPI
func configureAPI(api *operations.ToDoListAPI) {
// configure the api here
api.ServeError = errors.ServeError
api.JSONConsumer = httpkit.JSONConsumer()
api.JSONProducer = httpkit.JSONProducer()
api.XPetstoreTokenAuth = func(token string) (interface{}, error) {
return nil, errors.NotImplemented("api key auth x-petstore-token from header has not yet been implemented")
}
api.AddOneHandler = todos.AddOneHandlerFunc(func(principal interface{}) middleware.Responder {
return middleware.NotImplemented("operation addOne has not yet been implemented")
})
api.DestroyOneHandler = todos.DestroyOneHandlerFunc(func(params todos.DestroyOneParams, principal interface{}) middleware.Responder {
return middleware.NotImplemented("operation destroyOne has not yet been implemented")
})
api.FindHandler = todos.FindHandlerFunc(func(principal interface{}) middleware.Responder {
return middleware.NotImplemented("operation find has not yet been implemented")
})
api.UpdateOneHandler = todos.UpdateOneHandlerFunc(func(params todos.UpdateOneParams, principal interface{}) middleware.Responder {
return middleware.NotImplemented("operation updateOne has not yet been implemented")
})
}
示例7: TestBuildRequest_BuildHTTP_Files
func TestBuildRequest_BuildHTTP_Files(t *testing.T) {
cont, _ := ioutil.ReadFile("./client.go")
reqWrtr := client.RequestWriterFunc(func(req client.Request, reg strfmt.Registry) error {
req.SetFormParam("something", "some value")
req.SetFileParam("file", "./client.go")
req.SetQueryParam("hello", "world")
req.SetPathParam("id", "1234")
req.SetHeaderParam("X-Rate-Limit", "200")
return nil
})
r, _ := newRequest("GET", "/flats/{id}/", reqWrtr)
r.SetHeaderParam(httpkit.HeaderContentType, httpkit.JSONMime)
req, err := r.BuildHTTP(httpkit.JSONProducer(), nil)
if assert.NoError(t, err) && assert.NotNil(t, req) {
assert.Equal(t, "200", req.Header.Get("x-rate-limit"))
assert.Equal(t, "world", req.URL.Query().Get("hello"))
assert.Equal(t, "/flats/1234/", req.URL.Path)
mediaType, params, err := mime.ParseMediaType(req.Header.Get(httpkit.HeaderContentType))
if assert.NoError(t, err) {
assert.Equal(t, httpkit.MultipartFormMime, mediaType)
boundary := params["boundary"]
mr := multipart.NewReader(req.Body, boundary)
frm, err := mr.ReadForm(1 << 20)
if assert.NoError(t, err) {
assert.Equal(t, "some value", frm.Value["something"][0])
mpff := frm.File["file"][0]
mpf, _ := mpff.Open()
assert.Equal(t, "client.go", mpff.Filename)
actual, _ := ioutil.ReadAll(mpf)
assert.Equal(t, cont, actual)
}
}
}
}
示例8: configureAPI
func configureAPI(api *operations.GophergalaLearningResourcesAPI) http.Handler {
// configure the api here
api.ServeError = errors.ServeError
api.JSONConsumer = httpkit.JSONConsumer()
api.JSONProducer = httpkit.JSONProducer()
api.AddLearningResourceHandler = operations.AddLearningResourceHandlerFunc(func(params operations.AddLearningResourceParams) middleware.Responder {
return middleware.NotImplemented("operation .AddLearningResource has not yet been implemented")
})
api.DeleteLearningResourceHandler = operations.DeleteLearningResourceHandlerFunc(func(params operations.DeleteLearningResourceParams) middleware.Responder {
return middleware.NotImplemented("operation .DeleteLearningResource has not yet been implemented")
})
api.FindLearningResourceByIDHandler = operations.FindLearningResourceByIDHandlerFunc(func(params operations.FindLearningResourceByIDParams) middleware.Responder {
return middleware.NotImplemented("operation .FindLearningResourceByID has not yet been implemented")
})
api.FindLearningResourcesHandler = operations.FindLearningResourcesHandlerFunc(func(params operations.FindLearningResourcesParams) middleware.Responder {
return middleware.NotImplemented("operation .FindLearningResources has not yet been implemented")
})
api.ServerShutdown = func() {}
// api.CommandLineOptionsGroups = []swag.CommandLineOptionsGroup{ ... }
return setupGlobalMiddleware(api.Serve(setupMiddlewares))
}
示例9: New
// New creates a new default runtime for a swagger api client.
func New(host, basePath string, schemes []string) *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(),
httpkit.XMLMime: httpkit.XMLConsumer(),
httpkit.TextMime: httpkit.TextConsumer(),
}
rt.Producers = map[string]httpkit.Producer{
httpkit.JSONMime: httpkit.JSONProducer(),
httpkit.XMLMime: httpkit.XMLProducer(),
httpkit.TextMime: httpkit.TextProducer(),
}
rt.Transport = http.DefaultTransport
rt.Jar = nil
rt.Host = host
rt.BasePath = basePath
rt.Context = context.Background()
rt.clientOnce = new(sync.Once)
if !strings.HasPrefix(rt.BasePath, "/") {
rt.BasePath = "/" + rt.BasePath
}
rt.Debug = os.Getenv("DEBUG") == "1"
if len(schemes) > 0 {
rt.schemes = schemes
}
return &rt
}
示例10: configureAPI
func configureAPI(api *operations.PortLayerAPI) http.Handler {
if options.PortLayerOptions.Debug {
log.SetLevel(log.DebugLevel)
}
ctx := context.Background()
sessionconfig := &session.Config{
Service: options.PortLayerOptions.SDK,
Insecure: options.PortLayerOptions.Insecure,
Keepalive: options.PortLayerOptions.Keepalive,
DatacenterPath: options.PortLayerOptions.DatacenterPath,
ClusterPath: options.PortLayerOptions.ClusterPath,
PoolPath: options.PortLayerOptions.PoolPath,
DatastorePath: options.PortLayerOptions.DatastorePath,
}
sess, err := session.NewSession(sessionconfig).Create(ctx)
if err != nil {
log.Fatalf("configure_port_layer ERROR: %s", err)
}
// Configure the func invoked if the PL panics or is restarted by vic-init
api.ServerShutdown = func() {
log.Infof("Shutting down port-layer-server")
// Logout the session
if err := sess.Logout(ctx); err != nil {
log.Warnf("unable to log out of session: %s", err)
}
}
// initialize the port layer
if err = portlayer.Init(ctx, sess); err != nil {
log.Fatalf("could not initialize port layer: %s", err)
}
// configure the api here
api.ServeError = errors.ServeError
api.BinConsumer = httpkit.ByteStreamConsumer()
api.JSONConsumer = httpkit.JSONConsumer()
api.JSONProducer = httpkit.JSONProducer()
api.TxtProducer = httpkit.TextProducer()
handlerCtx := &handlers.HandlerContext{
Session: sess,
}
for _, handler := range portlayerhandlers {
handler.Configure(api, handlerCtx)
}
return setupGlobalMiddleware(api.Serve(setupMiddlewares))
}
示例11: New
// New creates a new default runtim for a swagger api client.
func New(swaggerSpec *spec.Document) *Runtime {
var rt Runtime
rt.DefaultMediaType = "application/json"
rt.Consumers = map[string]httpkit.Consumer{
"application/json": httpkit.JSONConsumer(),
}
rt.Producers = map[string]httpkit.Producer{
"application/json": httpkit.JSONProducer(),
}
return &rt
}
示例12: configureAPI
func configureAPI(api *operations.TodoListAPI) http.Handler {
// configure the api here
api.ServeError = errors.ServeError
api.JSONConsumer = httpkit.JSONConsumer()
api.JSONProducer = httpkit.JSONProducer()
api.TodosFindTodosHandler = todos.FindTodosHandlerFunc(func(params todos.FindTodosParams) middleware.Responder {
return middleware.NotImplemented("operation todos.FindTodos has not yet been implemented")
})
return setupGlobalMiddleware(api.Serve(setupMiddlewares))
}
示例13: TestContentType_Issue264
func TestContentType_Issue264(t *testing.T) {
swspec, err := spec.Load("../../fixtures/bugs/264/swagger.yml")
if assert.NoError(t, err) {
api := untyped.NewAPI(swspec)
api.RegisterConsumer("application/json", httpkit.JSONConsumer())
api.RegisterProducer("application/json", httpkit.JSONProducer())
api.RegisterOperation("delete", "/key/{id}", new(stubOperationHandler))
handler := Serve(swspec, api)
request, _ := http.NewRequest("DELETE", "/key/1", nil)
recorder := httptest.NewRecorder()
handler.ServeHTTP(recorder, request)
assert.Equal(t, 200, recorder.Code)
}
}
示例14: configureAPI
func configureAPI(api *operations.TaskTrackerAPI) http.Handler {
// configure the api here
api.ServeError = errors.ServeError
api.JSONConsumer = httpkit.JSONConsumer()
api.JSONProducer = httpkit.JSONProducer()
api.APIKeyAuth = func(token string) (interface{}, error) {
return nil, errors.NotImplemented("api key auth (api_key) token from query has not yet been implemented")
}
api.TokenHeaderAuth = func(token string) (interface{}, error) {
return nil, errors.NotImplemented("api key auth (token_header) X-Token from header has not yet been implemented")
}
api.TasksAddCommentToTaskHandler = tasks.AddCommentToTaskHandlerFunc(func(params tasks.AddCommentToTaskParams, principal interface{}) middleware.Responder {
return middleware.NotImplemented("operation tasks.AddCommentToTask has not yet been implemented")
})
api.TasksCreateTaskHandler = tasks.CreateTaskHandlerFunc(func(params tasks.CreateTaskParams, principal interface{}) middleware.Responder {
return middleware.NotImplemented("operation tasks.CreateTask has not yet been implemented")
})
api.TasksDeleteTaskHandler = tasks.DeleteTaskHandlerFunc(func(params tasks.DeleteTaskParams, principal interface{}) middleware.Responder {
return middleware.NotImplemented("operation tasks.DeleteTask has not yet been implemented")
})
api.TasksGetTaskCommentsHandler = tasks.GetTaskCommentsHandlerFunc(func(params tasks.GetTaskCommentsParams) middleware.Responder {
return middleware.NotImplemented("operation tasks.GetTaskComments has not yet been implemented")
})
api.TasksGetTaskDetailsHandler = tasks.GetTaskDetailsHandlerFunc(func(params tasks.GetTaskDetailsParams) middleware.Responder {
return middleware.NotImplemented("operation tasks.GetTaskDetails has not yet been implemented")
})
api.TasksListTasksHandler = tasks.ListTasksHandlerFunc(func(params tasks.ListTasksParams) middleware.Responder {
return middleware.NotImplemented("operation tasks.ListTasks has not yet been implemented")
})
api.TasksUpdateTaskHandler = tasks.UpdateTaskHandlerFunc(func(params tasks.UpdateTaskParams, principal interface{}) middleware.Responder {
return middleware.NotImplemented("operation tasks.UpdateTask has not yet been implemented")
})
api.TasksUploadTaskFileHandler = tasks.UploadTaskFileHandlerFunc(func(params tasks.UploadTaskFileParams, principal interface{}) middleware.Responder {
return middleware.NotImplemented("operation tasks.UploadTaskFile has not yet been implemented")
})
api.ServerShutdown = func() {}
// api.CommandLineOptionsGroups = []swag.CommandLineOptionsGroup{ ... }
return setupGlobalMiddleware(api.Serve(setupMiddlewares))
}
示例15: configureAPI
func configureAPI(api *operations.TodoListAPI) http.Handler {
// configure the api here
api.ServeError = errors.ServeError
api.JSONConsumer = httpkit.JSONConsumer()
api.JSONProducer = httpkit.JSONProducer()
api.TodosAddOneHandler = todos.AddOneHandlerFunc(func(params todos.AddOneParams) middleware.Responder {
if err := addItem(params.Body); err != nil {
return todos.NewAddOneDefault(500).WithPayload(&models.Error{Code: swag.Int64(500), Message: err.Error()})
}
return todos.NewAddOneCreated().WithPayload(params.Body)
})
api.TodosDestroyOneHandler = todos.DestroyOneHandlerFunc(func(params todos.DestroyOneParams) middleware.Responder {
if err := deleteItem(params.ID); err != nil {
return todos.NewDestroyOneDefault(500).WithPayload(&models.Error{Code: swag.Int64(500), Message: err.Error()})
}
return todos.NewDestroyOneNoContent()
})
api.TodosFindTodosHandler = todos.FindTodosHandlerFunc(func(params todos.FindTodosParams) middleware.Responder {
mergedParams := todos.NewFindTodosParams()
mergedParams.Since = swag.Int64(0)
if params.Since != nil {
mergedParams.Since = params.Since
}
if params.Limit != nil {
mergedParams.Limit = params.Limit
}
return todos.NewFindTodosOK().WithPayload(allItems(*mergedParams.Since, *mergedParams.Limit))
})
api.TodosUpdateOneHandler = todos.UpdateOneHandlerFunc(func(params todos.UpdateOneParams) middleware.Responder {
if err := updateItem(params.ID, params.Body); err != nil {
return todos.NewUpdateOneDefault(500).WithPayload(&models.Error{Code: swag.Int64(500), Message: err.Error()})
}
return todos.NewUpdateOneOK().WithPayload(params.Body)
})
api.ServerShutdown = func() {}
return setupGlobalMiddleware(api.Serve(setupMiddlewares))
}