我正在嘗試使用Parse LiveQueries。 我用這個解析「引導」:「https://github.com/parse-community/parse-server」,
我可以看到日誌:info: Create new client: 1
,
但我只是雖然我已經訂閱但沒有得到查詢更新。它甚至沒有達到subscription.handle
的處理程序。解析雲 - LiveQueries - iOS客戶端不起作用
config.json
:
{
"appId": "",
"masterKey": "",
"appName": "",
"cloud": "./cloud/main",
"databaseURI": "",
"publicServerURL": "",
// Relevant
"startLiveQueryServer": true,
"liveQuery": {
"classNames": ["Channel"]
},
}
AppDelegate.swift
:
// Initialize Parse.
let configuration = ParseClientConfiguration {
$0.applicationId = self.PARSE_APP_ID
$0.server = self.PARSE_SERVER
}
Parse.initialize(with: configuration)
AppDelegate.liveQueryClient = ParseLiveQuery.Client()
The Subscription Code
(iOS版雨燕):
public static func listenSubscribedChannels(handler: @escaping (_ channel: Channel) -> Void) {
var subscription: Subscription<PFObject>?
let query: PFQuery<PFObject> = PFQuery(className: "Channel").whereKey("subscribers", containedIn: [PFUser.current()!.objectId])
subscription = AppDelegate.liveQueryClient!.subscribe(query).handle(Event.updated) { _, channel in
handler(channel)
}
}
我以前也試過這個,同樣的事情。 – Etgar
更新:好的我剛剛嘗試過,並且你是對的。 IDK爲什麼它在我前幾天嘗試時不起作用,可能又犯了一個錯誤。 非常感謝!你已經贏得了50分的聲譽! :) 編輯:我只能在7小時內給您獎賞 – Etgar
歡迎您。文檔很缺乏,所以這是最誤解的。尤其是Firebase的套接字是如何工作的,因爲即使在函數內聲明,它的內存地址仍然存在(它們使用全局處理程序,這就是爲什麼) –