【问题标题】:Setting cookies before a redirect in Phoenix Framework Elixir在 Phoenix Framework Elixir 中重定向之前设置 cookie
【发布时间】:2017-03-27 00:54:51
【问题描述】:

我注意到在重定向之前执行 put_resp_cookie() 时我的 cookie 没有设置。

conn
|> put_resp_cookie("shop", shop)

if (some_condition) do:
  redirect conn, to: "/foo/bar"

在我的 /foo/bar 控制器函数中,未设置 cookie。有没有办法设置cookie?

【问题讨论】:

  • 设置cookie后是否忘记重新分配connconn = conn |> put_resp_cookie(..)?
  • 我认为我使用的语法可以做到这一点,根据这篇博文:amberbit.com/elixir-cocktails/phoenix/…
  • 不,管道不会重新分配。代码起作用的原因是,当您在管道之后执行 if 时,它直接返回新的 conn
  • @Dogbert 随意添加答案,我会接受。那行得通。

标签: cookies elixir phoenix-framework


【解决方案1】:

您似乎没有重新分配conn。您只需将 conn 输入put_resp_cookie/2,但没有捕获该值。您可能打算改为这样做

conn = conn |> put_resp_cookie("shop", shop)

【讨论】:

    猜你喜欢
    • 2010-11-02
    • 1970-01-01
    • 1970-01-01
    • 2013-01-07
    • 2021-08-04
    • 2020-02-20
    • 2016-03-11
    • 1970-01-01
    • 2019-01-12
    相关资源
    最近更新 更多