Szukaj…


Wprowadzenie

Więc jeśli chcesz powiadomić aplikację internetową, sugeruję skorzystanie z Push.js lub frameworka SoneSignal dla aplikacji internetowej / mobilnej.

Push to najszybszy sposób na rozpoczęcie pracy z powiadomieniami JavaScript. Dość nowy dodatek do oficjalnej specyfikacji, interfejs API Notification pozwala nowoczesnym przeglądarkom, takim jak Chrome, Safari, Firefox i IE 9+, na wysyłanie powiadomień na pulpit użytkownika.

Będziesz musiał użyć Socket.io i niektórych frameworków backendowych, w tym przykładzie użyję Express.

Parametry

moduł / framework opis
node.js / express Prosta struktura backe-end dla aplikacji Node.js, bardzo łatwa w użyciu i niezwykle wydajna
Socket.io Socket.IO umożliwia dwukierunkową komunikację w czasie rzeczywistym opartą na zdarzeniach. Działa na każdej platformie, przeglądarce lub urządzeniu, koncentrując się jednakowo na niezawodności i szybkości.
Push.js Najbardziej wszechstronna na świecie platforma powiadomień na pulpicie
OneSignal Kolejny formularz poza powiadomieniami push dla urządzeń Apple
Firebase Firebase to platforma mobilna Google, która pomaga szybko opracowywać wysokiej jakości aplikacje i rozwijać firmę.

Powiadomienie internetowe

Najpierw musisz zainstalować moduł Push.js.

$ npm install push.js --save

Lub zaimportuj go do aplikacji front-end za pośrednictwem CDN

<script src="./push.min.js"></script> <!-- CDN link -->

Po tym wszystkim powinieneś już iść. Tak powinno to wyglądać, jeśli chcesz dokonać prostego powiadomienia:

Push.create('Hello World!')

Zakładam, że wiesz, jak skonfigurować Socket.io w swojej aplikacji. Oto przykładowy kod mojej aplikacji backendowej z express:

var app = require('express')();
var server = require('http').Server(app);
var io = require('socket.io')(server);

server.listen(80);

app.get('/', function (req, res) {
  res.sendfile(__dirname + '/index.html');
});

io.on('connection', function (socket) {
  
  socket.emit('pushNotification', { success: true, msg: 'hello' });

});

Po skonfigurowaniu serwera powinieneś być w stanie przejść do frontonu. Teraz wystarczy zaimportować CDN Socket.io i dodać ten kod do mojego pliku index.html :

<script src="../socket.io.js"></script> <!-- CDN link -->
<script>
  var socket = io.connect('http://localhost');
  socket.on('pushNotification', function (data) {
    console.log(data);
    Push.create("Hello world!", {
        body: data.msg, //this should print "hello"
        icon: '/icon.png',
        timeout: 4000,
        onClick: function () {
            window.focus();
            this.close();
        }
    });
  });
</script>

Proszę bardzo, teraz powinieneś być w stanie wyświetlić powiadomienie, działa to również na dowolnym urządzeniu z Androidem, a jeśli chcesz korzystać z wiadomości Firebase w chmurze, możesz użyć go z tym modułem, oto link do tego przykładu napisanego przez Nicka (twórca of Push.js)

jabłko

Pamiętaj, że to nie zadziała na urządzeniach Apple (nie przetestowałem ich wszystkich), ale jeśli chcesz, aby powiadomienia wypychane sprawdzały wtyczkę OneSignal .



Modified text is an extract of the original Stack Overflow Documentation
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow