Creating a functional RESTful server
This section illustrates how to develop a RESTful server in Go given a REST API. The biggest difference between the presented RESTful service and the phone book application created in Chapter 8, Building Web Services, is that the RESTful service in this chapter uses JSON messages everywhere, whereas the phone book application interacts and works using plain text messages. If you are thinking of using net/http
for the implementation of the RESTful server, please do not do so! This implementation uses the gorilla/mux
package, which is a much better choice because it supports subrouters—more about that in the Using gorilla/mux subsection.
The purpose of the RESTful server is to implement a login/authentication system. The purpose of the login system is to keep track of the users who are logged in, as well as their permissions. The system comes with a default administrator user named admin
—the default password is also admin
and you...