Допустим, у меня есть кнопка, которая откроет новую страницу.Действие этой кнопки обрабатывается AJAX-вызовом Golang API.Этот Golang API обернут промежуточным программным обеспечением Verify
, которое проверит все перед тем, как перейти на эту страницу.Страница, определенная в функции, переданной в промежуточное ПО, использует HTML-шаблон Golang.
router.GET("/newpage", Verify(newpageHandler))
func Verify(h http.HandlerFunc) http.HandlerFunc {
return func(w http.ResponseWriter, r *http.Request) {
//verify everything here
//if all verify, call newpageHandler to redirect to new page
h.ServeHTTP(w,r)
}
}
func newpageHandler(w http.ResponseWriter, r *http.Request) {
//this handler will process the html template
}
Когда я нажимаю кнопку (вызов AJAX на /newpage
), она не открывает новую страницу, новозвращает только содержимое HTML из обработчика newpageHandler
.Я вижу HTML, возвращенный из инструментов разработчика браузера, но он не получает эту новую страницу, определенную в newpageHandler
.
Можно ли использовать http.Redirect
?