gpt4 book ai didi

go - 如何使用 go 修复 POST 404 错误?不是源代码错误

转载 作者:数据小太阳 更新时间:2023-10-29 03:45:14 25 4
gpt4 key购买 nike

我用 golang book 输入我的源代码。我的源码和我的golang书的源码是一样的

查看源码

--------golang--------

package main

import (
"fmt"
"net/http"
)

func main() {
r := &router{make(map[string]map[string]HandlerFunc)}

r.HandleFunc("GET", "/", func(c *Context) {
fmt.Fprintln(c.ResponseWriter, "welcome!")
})

r.HandleFunc("GET", "/about", func(c *Context) {
fmt.Fprintln(c.ResponseWriter, "about")
})

r.HandleFunc("GET", "/users/:id", func(c *Context) {
fmt.Fprintf(c.ResponseWriter, "retrieve user %v\n",
c.Params["id"])
})

r.HandleFunc("GET", "/users/:user_id/addresses/:address_id", func(c *Context) {
fmt.Fprintf(c.ResponseWriter, "retrieve user %v's address %v\n",
c.Params["user_id"], c.Params["address_id"])
})

r.HandleFunc("POST", "/users", func(c *Context) {
fmt.Fprintf(c.ResponseWriter, "create user\n")
})

r.HandleFunc("POST", "/users/:user_id/addresses", func(c *Context) {
fmt.Fprintf(c.ResponseWriter, "create user %v's address\n", c.Params["user_id"])
})

http.ListenAndServe(":8080", r)
}

PS C:\Users\user\go> curl http://localhost:8080/users/1 curl :404 页面未找到在行:1 字符:1+ curl http://localhost:8080/users/1+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo:InvalidOperation:(System.Net.HttpWebRequest:HttpWebRequest)[Invoke-WebRequest],WebException + FullyQualifiedErrorId : WebCmdletWebResponseException,Microsoft.PowerShell.Commands.InvokeWebRequestCommand

最佳答案

当您为 HandlerFunc 定义 uri 时,参数必须介于 {}

/users/{id} 而不是/users/:id

关于go - 如何使用 go 修复 POST 404 错误?不是源代码错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57994273/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com