#Why url_encode_64 for live_session_id?

1 messages · Page 1 of 1 (latest)

proud current
#

This is a part from phx.gen.auth

  defp put_token_in_session(conn, token) do
    conn
    |> put_session(:user_token, token)
    |> put_session(:live_socket_id, "user_sessions:#{Base.url_encode64(token)}")
  end

Why live_socket_id has to be encoded when user_token isn't?
Is it because it's broadcasted later on log-out?

  def log_out_user(conn) do
    ...
    if live_socket_id = get_session(conn, :live_socket_id) do
      DemoWeb.Endpoint.broadcast(live_socket_id, "disconnect", %{})
    end
    ...
  end
tepid lagoon
#

Seems to me it might break the topic syntax if it contained any colons so that's why it's encoded

proud current
tepid lagoon
#

yes, that