golang 如何重写http 请求处理

    xiaoxiao2021-03-25  104

    在某些特殊的情况。golang 内置包的 http 处理满足不了我们的需求。那么我们就需要自己重写一个对应的请求

    那么应该怎么去写这个东西。

    我们需要重写golang net/http 包的 Handler interface

    很简单的一个接口

    type Handler interface { ServeHTTP(ResponseWriter, *Request) } 可以看出。我们这边只需要 实现这个 ServeHTTP 方法就好了

    测试代码是这样的

    package main import ( "log" "net/http" ) type HttpTest struct { } func main() { //监听8080 端口。重写Handler 接口 请求处理方法 log.Fatal(http.ListenAndServe(":8080", HttpTest{})) } func (this HttpTest) ServeHTTP(w http.ResponseWriter, req *http.Request) { //获取访问的url log.Println(req.URL.String()) } 写完直接启动就可以了。

    我这边没有加什么很 厉害的功能 只是输出对应的 访问url

    转载请注明原文地址: https://ju.6miu.com/read-20828.html

    最新回复(0)