【发布时间】:2021-05-05 08:38:27
【问题描述】:
我有continued this question here,因为焦点已经改变,但是是相关的。
Vapor 正在服务器和 iOS 客户端之间进行通信。只需设置代码,用于学习目的。
现在,我想使用 JSON 通过已建立的连接发送值字典。我陷入了演示代码无法解释的逻辑中,但这就是我的位置,在我的蒸汽路线中:
app.webSocket("respond") { req, ws in
ws.onText { ws, text in
print(text)
let msgDict = "{'name' = 'bobby'}"
let encoder = JSONEncoder()
let data = try encoder.encode(msgDict)
ws.send(data)
}
}
这不会编译: Invalid conversion from throwing function of type '(WebSocket, String) throws -> ()' to non-throwing function type '(WebSocket, String) -> ()'
虽然我通常理解这个错误,但取决于我如何处理它,它会有所不同。
我通常寻找的是一种简单的模式来获取内部字典值,将它们编码为 JSON,然后发送它们。我做错了什么,或者做得不对?
【问题讨论】:
标签: json swift websocket vapor