如何使用ruby event\u store\u客户端发布事件?
我正在遵循上的文档,以便使用设置发布/订阅系统,但无法发布事件 以下是我迄今为止采取的步骤:如何使用ruby event\u store\u客户端发布事件?,ruby,grpc,eventstoredb,Ruby,Grpc,Eventstoredb,我正在遵循上的文档,以便使用设置发布/订阅系统,但无法发布事件 以下是我迄今为止采取的步骤: 我最初尝试在不安全模式下将服务器设置为Docker容器:服务器启动,我可以访问管理UI(无需身份验证),但随后客户端尝试连接SSL而失败,我还没有找到在客户端禁用安全性的方法 然后,我尝试使用gem中提供的脚本启动服务器,但docker sync出现问题,服务器无法启动 最后,我复制了脚本中的步骤,创建了自签名证书,并且我可以使用首选的gRPC协议引导服务器和客户机进行安全连接 我能够按照教程的步骤
- 我最初尝试在不安全模式下将服务器设置为Docker容器:服务器启动,我可以访问管理UI(无需身份验证),但随后客户端尝试连接SSL而失败,我还没有找到在客户端禁用安全性的方法
- 然后,我尝试使用gem中提供的脚本启动服务器,但docker sync出现问题,服务器无法启动
- 最后,我复制了脚本中的步骤,创建了自签名证书,并且我可以使用首选的gRPC协议引导服务器和客户机进行安全连接
event\u store.publish(流:'newstream',事件:[event])
然后我得到以下错误:
ArgumentError: wrong number of arguments (given 1, expected 0)
from /usr/local/bundle/gems/event_store_client-1.0.8/lib/event_store_client/event.rb:17:in `initialize'
我试图在堆栈跟踪之后查找源代码,但找不到该调用的错误。事件
对象似乎已正确初始化,而且我非常确定连接也已正确建立(我收到另一个不同凭据的错误)
非常感谢您的任何建议。:-) 从版本1.0.8开始,
事件存储\客户端
似乎与Ruby 3.0.0不兼容。该问题可能是由于依赖于dry struct
1.4.0,或者是由于初始化EventStoreClient::Event
时传递属性的方式造成的
现在,我将坚持使用Ruby 2.7.3,使用它的示例可以按照文档中的说明工作,并在最终升级到Ruby 3后更新此问答