javascript - Parse.com 云代码 - 保存后

标签 javascript parse-platform mandrill parse-cloud-code

我希望向 Parse.com 添加一个保存后触发器,以便在更新某种类型的用户帐户时通知我。在这种情况下,如果 Parse.User 中的“user_ispro”列为 true,我希望在保存后收到电子邮件(此列为 null 到 true)。我添加了下面的代码,但每次更新我都会收到电子邮件,而不仅仅是我的查询。想法?

Parse.Cloud.afterSave(Parse.User, function(request) {
    var Mandrill = require('mandrill');

    query = new Parse.Query(Parse.User);
    query.equalTo("user_ispro", true);
    query.find({
        success: function(results) {
            Mandrill.initialize('xxxx');
            Mandrill.sendEmail({
                message: {
                    text: "Email Text",
                    subject: "Subject",
                    from_email: "test@test.com",
                    from_name: "Test",
                    to: [{
                        email: "test@test.com",
                        name: "Test"
                    }]
                },
                async: true
            }, {
                success: function(httpResponse) {
                    console.log(httpResponse);
                    response.success("Email sent!");
                },
                error: function(httpResponse) {
                    console.error(httpResponse);
                    response.error("Uh oh, something went wrong");
                }
            });

        },
        error: function() {
            response.error("User is not Pro");
        }
    });
});

最佳答案

查询的成功回调总是被执行(即:当查询成功时),几乎在所有情况下都是如此。当没有结果时,您期望查询失败,这是一个错误的假设。

如果结果为空,您应该添加一个检查,并且只有在有实际结果时才触发电子邮件发送。仅当出现错误时才会触发错误回调,空结果不是错误(显然)。

关于javascript - Parse.com 云代码 - 保存后,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26102196/

相关文章:

node.js - Sendgrid 中的替代代币列表

ruby-on-rails - Verizon 电子邮件到文本被提前切断

javascript - 无法使用 Cypress 获取 vuex 状态

javascript - 使用 javascript 查找最后一次出现的字符

rest - 使用 cordova 文件传输插件上传到 parse.com 时损坏的 jpeg

javascript - Parse.com 在循环中保存对象,仅保存最后一个对象

angularjs - 在 Angular 应用程序中缓存 parse.com Promise 的结果

javascript - 获取屏幕的当前左上角和右下角位置

javascript - 如何列出 JavaScript 对象的属性?

javascript - 发送的图像与山魈不显示