1

我正在使用 web.go 编写一个小型应用程序,该应用程序具有提供表单的功能。如果表单无效,用户将被重定向到同一页面:

func mypage(ctx *web.Context) {
     if ctx.Request.Method == "GET" {
         // show the form
     } else if ctx.Request.Method == "POST" {
        // redirection if the form is not valid:
        ctx.Request.Method = "GET"
        http.Redirect(ctx.ResponseWriter, 
                      ctx.Request, "/mypage", http.StatusNotAcceptable)
        return
     }
}

这是可行的,但需要注意的是,当表单无效时,它首先会显示一个带有"Not Acceptable"喜欢的文本的页面/mypage/mypage如果表格无效,我怎样才能让它直接进入?我怀疑它与http.StatusNotAcceptable但我不知道应该用什么替换它。

4

1 回答 1

1

事实证明这很容易:)

ctx.Request.Method = "GET"
mypage(ctx)

不需要http.Redirect。重要的部分是在调用之前将 更改Method为第一个。GETmypage(ctx)

于 2013-06-05T17:56:14.947 回答