重定向数据

时间:2018-09-29 15:19:08

标签: go go-gin

在成功创建user模型之后(例如),我需要将请求重定向到...,例如root页面。但我想发送消息给前。 “用户已创建!”。

我可以使用以下方式重定向:

c.Redirect(http.StatusCreated, "/")

但是我如何添加消息?

我尝试过(猜测是个坏主意)

c.Set("message": "Message")

和在根页面

s.MustGet("message")

但是如果root页在没有有效负载message的情况下加载,则会抱怨panic

请提出使用数据重定向的最佳方法。

编辑

很遗憾,c.Set()不起作用,可能是因为redirect

也许有人建议任何技巧来发送数据以进行重定向?

2 个答案:

答案 0 :(得分:1)

您始终可以致电c.GetString("message")而不是c.MustGet("message")

MustGet恐慌(如果键不存在),而不是Get,它使您可以处理键的存在,并且Get听起来更适合您的用例

答案 1 :(得分:0)

对于Redirect,无法在请求中发送数据。因此,在这种情况下,请使用Session

根据DOCUMENTATION

r := gin.Default()
store := cookie.NewStore([]byte("secret"))
r.Use(sessions.Sessions("mysession", store))
session.Set("message", "Oh-ho!")
session.Save()