我想在我的iOS客户端上接收特定表的实时更新。我能够成功连接,但未收到任何消息。
代码:
var client = RealtimeClient(endPoint: "https://MY PROJECT ID.supabase.co/realtime/v1", params: ["apikey": MY PUBLIC KEY])
let channel = client.channel(.table("realtime_test", schema: "public"))
client.connect()
channel.on(.all) { message in
print(message)
}
client.subscribe()
client.onError { error in
print("Socket Error: \(error)")
}
连接消息:
["status": ok, "extension": postgres_changes, "channel": public:realtime_test, "message": Subscribed to PostgreSQL]
需要注意的事项:
- 我有RLS读取策略设置为任何人(我也尝试与RLS禁用,没有运气)
- 为表和复制中启用了实时
- 如果我的端点或apikey输入错误,我将无法连接
我希望我有一个错误或提供的东西,但它只是 * 不工作 *:/
1条答案
按热度按时间vaqhlq811#
解决
显然,在执行.on(.all)时,您还必须侦听onMessage回调。
.insert、.update、.delete所有不使用onMessage回调的工作。