【发布时间】:2016-07-18 21:43:16
【问题描述】:
我已经尝试解决weird problem 已经有一段时间了。在单步执行大量 Angular 代码之后,我在通过 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)
}
【问题讨论】: