この質問は簡単ですが、まだ尋ねられていませんでした... Parse クラウド関数のコールバックをキャンセルする方法はありますか?? 私はアプリを開発していますが、特定のイベント (ログアウトなど) が与えられた場合、クラウド関数のコールバックを無視する (または、まったく受信しない) 方が良いでしょう。
私は cloudCode を使用してユーザーの新しいメッセージを取得しています。これは非同期で行っています。ログインしていないユーザーからの新しいメッセージが届かないようにするために、ユーザーがログアウトした場合は、そのリクエストをキャンセルする必要があります。
たとえば、クエリのコールバックを回避するための「キャンセル」メソッドがある PFQuery では、PFFiles にも「キャンセル」がありますが、クラウド関数ではこのようなものは見られませんでした。
これを行う方法はありますか?cloudCode リクエストをキャンセルするには??
編集:ここで、関数を呼び出すために使用しているObjective-Cコード
[PFCloud callFunctionInBackground:"getNewMessages" withParameters:@{} block:^(id object, NSError *error) {
if (!error) {
NSArray *newMessages = (NSArray *)object;
NSLog(@"*** %lu NEW MESSAGES FOUND", (unsigned long)newMessages.count);
} else {
NSLog(@"*** ERROR getting new messages: %@", error);
}
}];
そして、これはcloudCodeの関数です
Parse.Cloud.define("getNewMessages", function(request, response) {
var newMessagesQuery = new Parse.Query("Messages");
newMessagesQuery.equalTo("receiver", request.user);
newMessagesQuery.descending("createdAt");
newMessagesQuery.find().then(function(myNewMessages) {
response.success(myNewMessages);
},function(error) {
console.error("Error getting new messages");
response.success(error);
});
});
ありがとう!