代码之家  ›  专栏  ›  技术社区  ›  Ari Seyhun

如何将erlang消息发送到websocket处理程序?

  •  0
  • Ari Seyhun  · 技术社区  · 6 年前

    我一直在调查二郎的牛仔网袜。

    我的目标是将websocket框架发送到现有的websocket连接。 我在下面找到了文件 Receiving Erlang messages websocket_info/2 .

    这个文档中“发送Erlang消息”是什么意思?

    init(Req, State) ->
      Self = self(),
      spawn(fun() ->
        timer:sleep(2000),
        Self ! "Hoii"
      end),
      {cowboy_websocket, Req, State}.
    
    websocket_info(_Info, State) ->
      io:fwrite("Info received\n"),
      {ok, State}.
    

    但这似乎毫无作用。

    如何为我的客户发送Erlang消息 websocket\u信息/2 要处理现有的websocket连接吗?

    1 回复  |  直到 6 年前
        1
  •  2
  •   Ari Seyhun    6 年前

    几分钟后,我发现我只是在发送 self() ! "Msg" 太早了。

    牛仔网袜也有一个功能 websocket_init/1 websocket_info/2 信息。

    websocket_init(State) ->
      Self = self(),
      spawn(fun() ->
        timer:sleep(2000),
        Self ! "Hoii"
      end),
      {ok, State}.
    
    websocket_info(_Info, State) ->
      io:fwrite("Info received\n"),
      {ok, State}.
    

    注意,消息现在正在从 websocket初始化/1 功能而不仅仅是 init/2