How to access http headers in Phoenix socket?

Tried it, but doesn’t work. The x-header is correctly set in the conn but I cannot see it in the websocket connect/3.

  plug :x_approov_token_header

  def x_approov_token_header(conn, _opts) do
    [{_header, value} | _ ] = for {header, _} = pair <- conn.req_headers, header in ["approov-token"], do: pair

    Plug.Conn.put_req_header(conn, "x-approov-token", value)
  end

  socket "/socket", EchoWeb.UserSocket,
  # socket "/socket", ApproovSocketTransport,
    websocket: [
      compress: true,
      connect_info: [
        :peer_data,
        :trace_context_headers,
        :x_headers,
        :uri,
      ],
      check_origin: {EchoWeb.AuthController, :check_socket_origin?, []}
    ],
    longpoll: false