【问题标题】:Push notifications, from Parse-Server cloud code推送通知,来自 Parse-Server 云代码
【发布时间】:2020-06-13 19:32:44
【问题描述】:

我正在尝试使用 iOS 应用程序在 Parse-Server (Heroku) 上使用推送通知。

此时我可以通过运行以下命令在我的 iOS 应用中收到通知:

curl -X POST \
  -H "X-Parse-Application-Id: 12345678ABCDEFstuvwxyz" \
  -H "X-Parse-Master-Key: ABCDEF12345678stuvwxyz" \
  -H "Content-Type: application/json" \
  -d '{
        "where": {
          "deviceType": {
            "$in": ["ios"]
          }
        },
        "data": {
            "aps": {
              "alert": {},
              "content-available": 1
            },
            "title": "The Shining",
            "alert": {},
            "content-available": 1
        }
      }'\   https://myapp.herokuapp.com/parse/push

但现在我必须从云代码发送推送通知,即从 Parse.Cloud.afterSave 函数。

这是我尝试过的,遵循我在网上找到的一些示例代码,但它不起作用:

  Parse.Cloud.afterSave("Item_List", (request) => {
    Parse.Push.send({
      ??????
      data: {"alert": "NOTIFICATION-FOR-USERS"},
      }, { success: function() {
         console.log("#### PUSH OK");
      }, error: function(error) {
         console.log("#### PUSH ERROR" + error.message);
      }, useMasterKey: true});
  });

获得我想要的东西的正确方法是什么?

【问题讨论】:

    标签: ios push-notification apple-push-notifications parse-server heroku-api


    【解决方案1】:

    试试这样的:

    Parse.Cloud.afterSave('Item_List', async () => {
      const query = new Parse.Query(Parse.Installation);
      query.equalTo('deviceType','ios');
      await Parse.Push.send({
        where: query,
        data: { alert: 'NOTIFICATION-FOR-USERS' },
        useMasterKey: true
      });
    });
    

    【讨论】:

    • 事实上我取得了一些进展并且正在使用类似的代码,但没有异步和等待。我应该使用它吗?
    • 这是我目前的问题:stackoverflow.com/questions/60484864/…
    • 我更喜欢 async/await 风格,因为它不那么冗长。
    • 我明白了,我会尝试两个。除了风格偏好之外,两者之间还有什么根本区别吗?
    • 这只是 stile 首选项,但是,如果您只想在 afterSave 触发器完成后返回客户端,则必须确保您的函数返回一个承诺,或者您可以使用 async/await 格式(这使您的函数默认返回一个承诺)。
    猜你喜欢
    • 1970-01-01
    • 2023-03-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多