【问题标题】:Notification via iron-ajax (Polymer)通过 iron-ajax (Polymer) 通知
【发布时间】:2017-03-10 14:38:56
【问题描述】:

我们可以在 PolymerJS 中使用 iron-ajax 元素发送通知吗?

这是一个 CURL 请求示例(工作正常):

curl --header "授权:key=my_key" --header "内容类型: 应用程序/json" -d '{"to": "my_token", "notification": {"title": "Hello Bro", "body": "Message Yo man"}}' https://fcm.googleapis.com/fcm/send

我将自己的值用于“my_key”和“my_token”实例。在 chrome 中,它给了我这样的东西:Screenshot sample

这是我的 iron-ajax 元素的代码示例:

<iron-ajax id="xhr"
    auto
    url="https://fcm.googleapis.com/fcm/send"
    headers='{"Authorization": "[[my_key]]"}'
    handle-as="json"
    content-type="application/json"
    body='{"to":"[[my_token]]","notification": {"title": "Hello Bro", "body": "Message Yo man"}}' 
    method="POST">
</iron-ajax>

基于与页面上某些元素的交互,我试图通过 JS 触发通知:

this.$.xhr.generateRequest();

我收到了这样的回复:

{"multicast_id":5623718911822310219,"success":1,"failure":0,"canonical_ids":0,"results":[{"message_id":"0:1489155273403695%e609af1cf9fd7ecd"}]}

所以它似乎是成功的,虽然这次我没有收到任何通知。我在这里遗漏了什么,还是有更好的方法在 Polymer 中实现它?提前感谢您对此事的任何见解!

【问题讨论】:

  • 你想在成功的 api 调用上调用一些函数吗?
  • 从技术上讲,我只是想收到通知,但它并没有按原样显示,我很好奇,甚至可以通过将提到的 curl 请求重建为 Iron-ajax 来接收 gsm 通知元素以某种方式?这可能很棒,感谢您的评论!

标签: javascript curl notifications google-cloud-messaging polymer-1.0


【解决方案1】:

它按原样工作;) 您无法通过自己的 UI 向自己发送通知。此外,如果您要向特定的应用程序/网站(至少通过桌面)发送通知 - 该应用程序/网站不应该是浏览器中的当前活动选项卡(或者浏览器不应该是接收者的活动应用程序),这个当然是有道理的——但我花了一些时间才弄清楚。虽然通过 vanilla js 再次有更简单的方法来执行此操作 - 您甚至可以通过浏览器控制台触发它(使用正确的参数)。我希望这对某人有帮助,祝你好运!

 function triggerNotification(key,token,title,message){
    var notification = {
      'title': title,
      'body': message
    };

    fetch('https://fcm.googleapis.com/fcm/send', {
      'method': 'POST',
      'headers': {'Authorization': 'key=' + key, 'Content-Type': 'application/json'},
      'body': JSON.stringify({'notification': notification, 'to': token})
    }).then(function() {
      console.log("Response: ",arguments);
    }).catch(function(error) {
      console.error(error);
    })
}

【讨论】:

    猜你喜欢
    • 2016-06-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多