服务器自动post,Go Web服务器自动重定向POST请求

我已经尝试解决一个奇怪的问题了一段时间了。在浏览了许多棱角分明的代码之后,当我通过Charles将请求记录到服务器时,我注意到了一些奇怪的东西。

当我发布到url时/myurl,请求实际上不会到达我的服务器。相反,它收到301响应,然后GET请求命中了我的服务器。

这令人难以置信。还有其他人遇到这个问题吗?如果您有兴趣,我已经上传了我的Charles日志的屏幕截图。

作为参考,这是我的服务器的外观:

type FormStruct struct {

Test string

}

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

var t FormStruct

req, _ := httputil.DumpRequest(r, true)

log.Println(string(req))

log.Println(r.Method) // GET

log.Println(r.Body)

decoder := json.NewDecoder(r.Body)

err := decoder.Decode(&t)

log.Println("Decoding complete")

if err != nil {

log.Println("Error")

panic(err.Error()+"\n\n")

}

log.Println(t.Test)

w.Write([]byte("Upload complete, no errors"))

}

func main() {

http.HandleFunc("/myurl/", PHandler)

fmt.Println("Go Server listening on port 8001")

http.ListenAndServe(":8001", nil)

}

你可能感兴趣的:(服务器自动post)