1

iron-ajax要素を使用してPolymerJSで通知を送信できますか?ここでIron-ajax(Polymer)による通知

はCURLリクエスト(正常に動作します)のサンプルです:

カール--header "認可:キー= my_key" --header "のContent-Type: アプリケーション/ jsonの" -d「{ "へ": "my_token"、 "通知": { "タイトル": "こんにちはブロ"、 "身体": "メッセージヨ男"}}」 https://fcm.googleapis.com/fcm/send

私は私自身の値を使用しています"my_key"および "my_token"インスタンスの場合Screenshot sample

ここに私の鉄の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でそれを達成するためのより良い方法があるのでしょうか?この問題についての洞察をお寄せいただきありがとうございます。

+0

あなたは成功したAPI呼び出しで、いくつかの関数を呼び出したいのですか? – aries12

+0

技術的に私は通知を受け取りたいだけですが、それは例として表示されていません。私は興味がありますか?何とか、言及したカール要求をiron-ajax要素に再構築してgsm通知を受け取ることさえ可能ですか?あなたのコメントのおかげで、これは素晴らしいことができます! –

答えて

0

IT WORKSそのままです;)自分の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); 
 
    }) 
 
}

関連する問題