官术网_书友最值得收藏!

Handling Routing for our REST Services

In this chapter, we will discuss routing for a REST application. To create an API, the first step is to define routes. To define routes, we have to figure out the available system packages in Go. We'll begin this chapter by exploring the basic internal routing mechanism in Go. We then see how to create a custom multiplexer, an entity that matches a given URL to a registered pattern. A multiplexer basically allows a developer to create a route to listen to client requests and attaches handlers that hold the business logic of the application. The ServeMux package is the basic multiplexer provided by Go. We'll then explore a few other frameworks as ServeMux capabilities are very limited.

This chapter also includes the likes of third-party libraries such as httprouter and gorilla/mux. Then, we'll discuss topics such as SQL injection. The crux of this chapter is to teach you how to create elegant HTTP routers in Go using gorilla/mux. We'll also briefly discuss designing a URL shortening service.

We will cover the following topics:

  • Understanding Go's  net/http package
  • ServeMux—a basic router in Go
  • Understanding httprouter—a lightweight HTTP router
  • Introducing gorilla/mux—a powerful HTTP router
  • Reader's challenge: an API for URL shortening

主站蜘蛛池模板: 辽阳县| 通山县| 勐海县| 太湖县| 涟水县| 酉阳| 永善县| 屏山县| 吴江市| 合阳县| 巴塘县| 怀化市| 南城县| 衡水市| 城口县| 贵南县| 庐江县| 北辰区| 武汉市| 波密县| 安平县| 河间市| 获嘉县| 高陵县| 玛曲县| 鄂伦春自治旗| 长寿区| 哈巴河县| 子洲县| 台湾省| 临安市| 蚌埠市| 巴东县| 石城县| 嘉善县| 射阳县| 威宁| 石泉县| 临颍县| 汾阳市| 沿河|