使用 Swift 在 Parse Server 中触发
Posted
技术标签:
【中文标题】使用 Swift 在 Parse Server 中触发【英文标题】:Triggers in Parse Server using Swift 【发布时间】:2016-08-25 22:25:01 【问题描述】:最近,我的任务是使用 Swift 为 ios 做一个简单的聊天应用程序。所以,我已经准备好并运行了一个解析服务器!我只想知道如何使用触发器..
假设我打开了一个对话,并且刚刚收到一条新消息。我怎样才能得到它,而无需不断检查新消息?我看到云代码可能是要走的路,但如果是这样,它实用吗?我的意思是,如果我有 5000 个用户并且他们一直在聊天,它会表现良好吗?
提前致谢!
【问题讨论】:
【参考方案1】:你想使用Parse LiveQuery 组件。
Add Live Query to your server's config:
let api = new ParseServer(
...,
liveQuery:
classNames: ['Test', 'TestAgain']
);
// Initialize a LiveQuery server instance, app is the express app of your Parse Server
let httpServer = require('http').createServer(app);
httpServer.listen(port);
var parseLiveQueryServer = ParseServer.createLiveQueryServer(httpServer);
将 Parse LiveQuery 库作为 pod 安装到您的项目 (pod 'ParseLiveQuery'
)。
订阅活动:
let myQuery = Message.query()!.where("user", equalTo: PFUser.currentUser()!)
let subscription: Subscription<Message> = myQuery.subscribe()
处理事件:
subscription.handleEvent query, event in
// Handle event
// This callback gets called every time an object is created, updated, deleted etc.
【讨论】:
我已经尝试过了,但我无法让它们工作!事件根本没有响应..我认为它很快就会供公众使用.. 我将它用于我的项目,效果很好。如果您在使用 Parse LiveQuery 时遇到问题,请发布另一个与之相关的问题。但是您当前的问题可以通过 Parse LiveQuery 解决。这就是它的本意。 好的..顺便说一句,把实时查询放在一边,我的问题可以通过云代码来解决吗? 所以,我再次尝试了 LiveQueries,他们终于成功了!!!它们似乎是一个很好的解决方案,尽管我注意到了一些问题......(如指针比较)无论如何,你说它们的效率如何?我的意思是,在一台双核、2GB 内存的机器中,您估计它可以支持多少用户? @SotirisKaniras 不知道,我的应用还没有投入生产。以上是关于使用 Swift 在 Parse Server 中触发的主要内容,如果未能解决你的问题,请参考以下文章
使用 Swift Parse Server 和 AWS SES 请求重置电子邮件的密码
Parse Server Swift Logic 用于抓取数组中包含的所有项目