美文网首页
go实现http服务二

go实现http服务二

作者: Uzero | 来源:发表于2018-01-01 12:29 被阅读0次

比第一个版本更加底层。通过ServeMux来控制路由的访问,ServeMux本质上只是一个路由管理器,而它本身也实现了Handler接口的ServeHTTP方法

server2.go 

package main

import (

        "io"

        "net/http"

        "log"

)

func main () {

        mux := http.NewServeMux()

        mux.Handle("/", &myHandler{})    

        mux.HandleFunc("/hello", sayTwo)

        err := http.ListenAndServe(":6066", mux)

        if err != nil {

            log.Fatal(err)

        }

}

// 自己实现一个handler,注册到mux中,然后再实现一个路由的注册

type myHandlerstruct {}

// 只需实现一个方法

func (*myHandler) ServeHTTP (w http.ResponseWriter, r *http.Request)  {

        io.WriteString(w, "URL: " + r.URL.String())

}

func sayTwo (w http.ResponseWriter, r *http.Request) {

        io.WriteString(w, "this is version 2")

}

go run server2.go

相关文章

  • go实现http服务二

    比第一个版本更加底层。通过ServeMux来控制路由的访问,ServeMux本质上只是一个路由管理器,而它本身也实...

  • go实现http服务一

    创建一个http服务,大致需要经历两个过程,首先需要注册路由,即提供url模式和handler函数的映射,其次就是...

  • go实现http服务三

    通过map来保存你注册的 handler , 底层通过ServeHTTP来进行转发。 每个handler只有一个方...

  • 18.http

    Go语言内置的net/http包十分的优秀,提供了HTTP客户端和服务端的实现。 net/http介绍 Go语言内...

  • Go语言内置的net/http

    Go语言内置的net/http包十分的优秀,提供了HTTP客户端和服务端的实现。 net/http介绍Go语言内置...

  • Go语言基础之net/http

    Go语言内置的net/http包十分的优秀,提供了HTTP客户端和服务端的实现。 net/http介绍 Go语言内...

  • go http学习笔记

    go http学习笔记 @[goweb, go, http] 1.go http基础 go http服务器简例 h...

  • 17 Go 鉴权(三):JWT

    Go 使用JWT鉴权 一、实现思路: 实现一个基于jwt-go包的JWT编解码工具 实现一个HTTP服务器编写登录...

  • go实现简单的http服务

    go语言有个内置包net/http,它帮我们实现了一些简单的http相关的函数,我们只要调用这个包就可以实现简单的...

  • 处理静态文件

    go语言实现http服务器时如果处理静态文件,需要用到http.ServeFile: func ServeFile...

网友评论

      本文标题:go实现http服务二

      本文链接:https://www.haomeiwen.com/subject/tpqtnxtx.html