Skip to Content
Learning Functional Programming in Go
book

Learning Functional Programming in Go

by Lex Sheehan
November 2017
Intermediate to advanced
670 pages
17h 35m
English
Packt Publishing
Content preview from Learning Functional Programming in Go

Format the response

In each web service request handler, we use the setFormat function in conjunction with the getFormat function to format the response data. We are simply using JSON in our example code, it is easy to see how we could extend our implementation to include formats such as XML and CSV.

(We're still in interfaces/webservice_helpers.go.):

func setFormat(format string, data interface{}) ([]byte, error) {   var apiOutput []byte   if format == "json" {      output, err := json.Marshal(data)      if err != nil {         return nil, errors.Wrap(err, "unable to marshal data to json")      }      apiOutput = output   } else {      Error.Printf("invalid data format encountered")      apiOutput = ErrorResponse   }   return apiOutput, nil}

The handler helpers are similar in format. Let’s ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Learning Functional Programming

Learning Functional Programming

Jack Widman

Publisher Resources

ISBN: 9781787281394Supplemental Content