【问题标题】:How to broadcast message to all channels names matched in source pattern?如何向源模式中匹配的所有频道名称广播消息?
【发布时间】:2016-01-27 23:27:42
【问题描述】:

加入的频道名称:

ABCD, ABCDE, ABC, XYZ, AI, ABCDEFG, BCD, CDEF

如何(列出?)匹配所有加入的频道,以及是否可以向基本模式ABCDEFG 中包含的ABCD, ABCDE, ABC, ABCDEFG 频道广播消息?

一个频道的例子:

SomeApp.Endpoint.broadcast("names:" <> "ABCDEFG", %{ result: "bingo" })

【问题讨论】:

  • 对不起——你的语法是不是错了?应该是SomeApp.Endpoint.broadcast("names:" <> "ABCDEFG", %{result: "bingo})(注意后面的括号)吗?

标签: regex websocket pattern-matching elixir phoenix-framework


【解决方案1】:

Phoenix 的 PubSub 不支持 splat 主题匹配,因此获得所需内容的唯一方法是理解显式主题 ABCD, ABCDE, ABC, XYZ, AI, ABCDEFG, BCD, CDEF 并在每个主题上调用 SomeApp.Endpoint.broadcast("names:" <> subtopic, %{result: "bingo"}

【讨论】:

    猜你喜欢
    • 2020-10-27
    • 2016-07-24
    • 2021-04-11
    • 2017-11-02
    • 2015-09-18
    • 2013-02-23
    • 1970-01-01
    • 1970-01-01
    • 2010-11-08
    相关资源
    最近更新 更多