Cookies 在Phoenix Framework Elixir中设置重定向之前的Cookie

Cookies 在Phoenix Framework Elixir中设置重定向之前的Cookie,cookies,elixir,phoenix-framework,Cookies,Elixir,Phoenix Framework,我注意到在重定向之前执行put_resp_cookie()时,没有设置cookie conn |> put_resp_cookie("shop", shop) if (some_condition) do: redirect conn, to: "/foo/bar" 在我的/foo/bar控制器函数中,未设置cookie。有办法设置cookie吗?看来您没有重新分配conn。您只是通过管道将conn连接到put_resp_cookie/2,但没有捕获值。你可能打算这样做 conn

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

conn
|> put_resp_cookie("shop", shop)

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

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

看来您没有重新分配
conn
。您只是通过管道将conn连接到
put_resp_cookie/2
,但没有捕获值。你可能打算这样做

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

设置cookie后是否忘记重新分配
conn
conn=conn |>put_resp_cookie(..)
?我认为我使用的语法可以做到这一点,正如这篇博文所说:不,管道不会重新分配。代码工作的原因是,当您在管道后面执行
if
时,它直接返回新的
conn
。@Dogbert请随意添加答案,我会接受它。成功了。