9.5 处理http 请求

Posted cucy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了9.5 处理http 请求相关的知识,希望对你有一定的参考价值。

package main

import (
    "fmt"
    "net/http"
)

func main() {

    mux := http.NewServeMux()
    mux.HandleFunc("/user", func(w http.ResponseWriter, r *http.Request) {
        if r.Method == http.MethodGet {
            fmt.Fprintln(w, "User GET")
        }
        if r.Method == http.MethodPost {
            fmt.Fprintln(w, "User POST")
        }
    })

    // separate handler
    itemMux := http.NewServeMux()
    itemMux.HandleFunc("/items/clothes", func(w http.ResponseWriter, r *http.Request) {
        fmt.Fprintln(w, "Clothes")
    })
    mux.Handle("/items/", itemMux)

    // Admin handlers
    adminMux := http.NewServeMux()
    adminMux.HandleFunc("/ports", func(w http.ResponseWriter, r *http.Request) {
        fmt.Fprintln(w, "Ports")
    })

    mux.Handle("/admin/",
        http.StripPrefix("/admin", adminMux))

    // Default server
    http.ListenAndServe(":8080", mux)

}

/*
(sx3.5.3) ?  ~ curl -XI http://127.0.0.1:8080/user
(sx3.5.3) ?  ~ curl -XI http://127.0.0.1:8080/userA
404 page not found
(sx3.5.3) ?  ~ curl -X POST http://127.0.0.1:8080/user
User POST

(sx3.5.3) ?  ~ curl  http://127.0.0.1:8080/admin
<a href="/admin/">Moved Permanently</a>.
*/

以上是关于9.5 处理http 请求的主要内容,如果未能解决你的问题,请参考以下文章

9.5 异常处理规则

代码片段 - Golang 实现简单的 Web 服务器

简单的 Javascript http 请求片段但不起作用

专业实训9.5

21-PHP代码审计——jizhicms1.9.5文件上传漏洞

21-PHP代码审计——jizhicms1.9.5文件上传漏洞