跳转之后页面为404
来源:4-3 编码实战:实现用户登录接口

qq_白澤_0
2021-03-28
这里跳转到了static/view/FAILD
可能是直接拷贝老师的静态文件有问题。但是不知道怎么处理
写回答
1回答
-
同学你好,应该是章节之间的go和前端代码不匹配造成的,因为这两章代码改动有些大,有兼容性问题。第四章的go代码需要和本章的static代码对应起来;第四章的登录代码应该是这样的(https://git.imooc.com/coding-323/filestore-server/src/charter4/handler/handler.go):
// SignInHandler : 登录接口 func SignInHandler(w http.ResponseWriter, r *http.Request) { if r.Method == http.MethodGet { // data, err := ioutil.ReadFile("./static/view/signin.html") // if err != nil { // w.WriteHeader(http.StatusInternalServerError) // return // } // w.Write(data) http.Redirect(w, r, "/static/view/signin.html", http.StatusFound) return } r.ParseForm() username := r.Form.Get("username") password := r.Form.Get("password") encPasswd := util.Sha1([]byte(password + pwdSalt)) // 1. 校验用户名及密码 pwdChecked := dblayer.UserSignin(username, encPasswd) if !pwdChecked { w.Write([]byte("FAILED")) return } // 2. 生成访问凭证(token) token := GenToken(username) upRes := dblayer.UpdateToken(username, token) if !upRes { w.Write([]byte("FAILED")) return } // 3. 登录成功后重定向到首页 //w.Write([]byte("http://" + r.Host + "/static/view/home.html")) resp := util.RespMsg{ Code: 0, Msg: "OK", Data: struct { Location string Username string Token string }{ Location: "http://" + r.Host + "/static/view/home.html", Username: username, Token: token, }, } w.Write(resp.JSONBytes()) }
012021-04-03
相似问题