2 回答

TA貢獻(xiàn)1982條經(jīng)驗(yàn) 獲得超2個(gè)贊
正如JimB已經(jīng)指出:你的服務(wù)器會(huì)很困惑,因?yàn)橛信c兩個(gè)寫入相關(guān)的不同狀態(tài)代碼http.ResponseWriter和redirect。你不能同時(shí)做這兩件事。
我實(shí)際上想詳細(xì)說(shuō)明如何將數(shù)據(jù)傳送到下一頁(yè)(假設(shè)您正在重定向)。
Headers 您可以將一些信息寫入請(qǐng)求對(duì)象并在目標(biāo)頁(yè)面上接收它。例子:
func myHandler(w http.ResponseWriter, r *http.Request) {
w.Header().Set("My-Awesome-Header", "Rocks")
...
}
會(huì)話: 據(jù)我所知,您正在談?wù)撛L問(wèn)控制,我認(rèn)為通過(guò)會(huì)話來(lái)保存用戶數(shù)據(jù)更好。示例:您可以使用數(shù)據(jù)庫(kù)或會(huì)話處理程序,如https://github.com/gorilla/sessions。查看此主題:會(huì)話的最佳實(shí)踐(大猩猩/會(huì)話)。
Cookies: 我不確定您使用的是哪種前端,但在 cookie 上存儲(chǔ)非敏感數(shù)據(jù)可能是一種選擇?沒(méi)有什么比這更好的了(示例中它有真正的巧克力餅干 ;-) ):https : //ataxie.gitbooks.io/build-web-application-with-golang/content/en/06.1.html。

TA貢獻(xiàn)1876條經(jīng)驗(yàn) 獲得超6個(gè)贊
在您的manage
處理程序中,您正在執(zhí)行模板,該模板將寫入http.ResponseWriter
并觸發(fā)http.StatusOK
(200) 狀態(tài)代碼。之后您無(wú)法重定向,因?yàn)檫@需要發(fā)送不同的響應(yīng)代碼。
如果需要重定向,請(qǐng)?jiān)趫?zhí)行模板之前進(jìn)行。
- 2 回答
- 0 關(guān)注
- 473 瀏覽
添加回答
舉報(bào)