Middleware and an Upload scalar to add support for GraphQL multipart requests (file uploads via queries and mutations) to various golang GraphQL servers.
go get github.com/jpascal/graphql-uploadserver := &http.Server{
	Addr: "0.0.0.0:5000", 
	Handler: handler.New(func(request *handler.Request) interface{} {
		return graphql.Do(graphql.Params{
			RequestString:  request.Query,
			OperationName:  request.OperationName,
			VariableValues: request.Variables,
			Schema:         schema.New(),
			Context:        request.Context,
		})
	}, &handler.Config {MaxBodySize: 1024}),
}
    server.ListenAndServe()- Fork it ( https://github.com/jpascal/graphql-upload/fork )
- Create your feature branch (git checkout -b my-new-feature)
- Commit your changes (git commit -am 'Add some feature')
- Push to the branch (git push origin my-new-feature)
- Create a new Pull Request