首页 > Web开发 > 详细

httpserver

时间:2019-07-27 15:20:31      阅读:83      评论:0      收藏:0      [点我收藏+]

快速创建一个httpserver

package main

import (
    "net/http"
    "fmt"
)

type MyHandler struct{

}


func(*MyHandler) ServeHTTP(write http.ResponseWriter,request *http.Request){
    write.Write([]byte("hello,myhandler"));
}

func main(){
        handler := new(MyHandler)
        server := http.Server{Addr:":8099",Handler:handler}
        err := server.ListenAndServe()
        if err != nil{
            fmt.Println(err)
        }
}

 路由 设置cookie  注销 判断登录

技术分享图片
package main

import (
    "net/http"
    "time"
)

type MyHandler struct {

}
func(*MyHandler) ServeHTTP(writer http.ResponseWriter, request *http.Request){

     writer.Write([]byte("hello,myhandler"))
}

func main()  {

     mymux:=http.NewServeMux()
     mymux.HandleFunc("/", func(writer http.ResponseWriter, request *http.Request) {
         writer.Write([]byte("index"))
     })
     mymux.HandleFunc("/login", func(writer http.ResponseWriter, request *http.Request) {
        getUserName:= request.URL.Query().Get("username")
        if getUserName!=""{
            c:=&http.Cookie{Name:"username",Value:getUserName,Path:"/"}
            http.SetCookie(writer,c)
        }
        writer.Write([]byte("这里是登录页面"));
     })
     mymux.HandleFunc("/unlogin", func(writer http.ResponseWriter, request *http.Request) {
         c:=&http.Cookie{Name:"username",Value:"",Path:"/",Expires:time.Now().AddDate(-1,0,0)}
         http.SetCookie(writer,c)
         writer.Header().Set("Content-type","text/html")
         writer.Write([]byte("unlogin...."));
         script:=`<script>
            setTimeout(()=>{self.location=/},2000)

</script>`
         writer.Write([]byte(script))
     })

    http.ListenAndServe(":8099",mymux)





}
View Code

 

httpserver

原文:https://www.cnblogs.com/sunlong88/p/11255165.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!