GoLang实战——微服务网关
warning:
这篇文章距离上次修改已过445天,其中的内容可能已经有所变动。
package main
import (
"fmt"
"log"
"net/http"
"github.com/gorilla/mux"
)
func main() {
router := mux.NewRouter().StrictSlash(true)
// 定义路由
router.HandleFunc("/products", ProductsHandler).Methods("GET")
router.HandleFunc("/products/{id}", ProductHandler).Methods("GET")
log.Fatal(http.ListenAndServe(":8080", router))
}
// ProductsHandler 返回所有产品列表
func ProductsHandler(w http.ResponseWriter, r *http.Request) {
fmt.Fprintf(w, "所有产品列表")
}
// ProductHandler 返回特定ID的产品信息
func ProductHandler(w http.ResponseWriter, r *http.Request) {
vars := mux.Vars(r)
id := vars["id"]
fmt.Fprintf(w, "产品ID: %v", id)
}这段代码使用了gorilla/mux库来创建一个简单的HTTP服务器,并定义了两个路由处理函数ProductsHandler和ProductHandler。服务器监听8080端口,并响应对/products和/products/{id}的GET请求。这个例子展示了如何使用Go语言创建一个简单的RESTful API网关。
评论已关闭