Configuration

Night mode

HTTP Request Routing

A$AP Scalable Web Services with Go & Docker 🚀 Course

Engineers From These Top Companies and Universities Trust EXLskills

1M+ Professionals | 100+ Institutions

This is the EXLskills free and open-source A$AP Scalable Web Services with Go & Docker Course! It's a highly-accelerated open course that's best-suited for people with a bit of background in software engineering to quickly pick up Go, learn the essential best practices, and hit the ground running!
After this course, you'll be able to build lightweight, scalable, and idiomatic web services that connect to relational (SQL) databases, consider auth, and serve performant JSON REST APIs.
For further practice, we recommend checking out our Go Guided Projects that will give you access to a professional Go developer, detailed documentation, and real-world tasks that you can work on to go from the basics of Go, into building production apps.

Is this course FREE?

Yes, this a 100% free course that you can contribute to on GitHub here!

Have more questions?

HTTP Scaffolding

HTTP Request Routing

Routing HTTP Requests

Now that we have our middleware, controllers, and a few other boilerplate features, we can finally create our routing infrastructure that will combine our middleware with our controllers that will actually respond to HTTP requests!

Gorilla MUX

To simplify this process and get some 'freebies' like automatic responses to browser OPTIONS requests, etc., we're going to pull in the Gorilla MUX router. You can read more about it here and it has become somewhat of a de-facto standard when it comes to building web services in Go.

Our Router

In routes/routes.go we're going to define our routes, connect the middleware, and export an HTTP handler that we'll then use in main.go to close out the loop! Here's what we're going to have in routes/routes.go: