Google 致力于为黑人社区推动种族平等。查看具体举措

向后台应用发送测试消息

如需开始学习如何使用 FCM,您可以构建一个最简单的使用场景:当应用在某位用户的设备后台运行时,向该设备发送一条通知消息。 本页面列出了实现此目标所需的所有步骤(从设置到验证)。如果您已针对 FCM 设置了 JavaScript 客户端应用,则下面的一些步骤您可能已经完成了。

设置 SDK

如果您尚未将 Firebase 添加到您的 JavaScript 项目,请先添加。

获取注册令牌

如果需要检索应用实例的当前注册令牌,请调用 getToken。如果未授予通知权限,此方法将向用户请求通知权限。在其他情况下,它会返回一个令牌,或由于出现错误而拒绝该 Promise。

消息传递服务需要一个 firebase-messaging-sw.js 文件。除非您已经有 firebase-messaging-sw.js 文件,否则请创建一个使用该名称的空文件,并在检索令牌之前将该文件放在您网域的根目录中。您可以在后面的客户端设置流程中向该文件添加有意义的内容。

如需检索当前令牌,请参考以下代码:

Web v8

// Get registration token. Initially this makes a network call, once retrieved
// subsequent calls to getToken will return from cache.
messaging.getToken({ vapidKey: '<YOUR_PUBLIC_VAPID_KEY_HERE>' }).then((currentToken) => {
  if (currentToken) {
    // Send the token to your server and update the UI if necessary
    // ...
  } else {
    // Show permission request UI
    console.log('No registration token available. Request permission to generate one.');
    // ...
  }
}).catch((err) => {
  console.log('An error occurred while retrieving token. ', err);
  // ...
});

Web v9

import { getMessaging, getToken } from "firebase/messaging";

// Get registration token. Initially this makes a network call, once retrieved
// subsequent calls to getToken will return from cache.
const messaging = getMessaging();
getToken(messaging, { vapidKey: '<YOUR_PUBLIC_VAPID_KEY_HERE>' }).then((currentToken) => {
  if (currentToken) {
    // Send the token to your server and update the UI if necessary
    // ...
  } else {
    // Show permission request UI
    console.log('No registration token available. Request permission to generate one.');
    // ...
  }
}).catch((err) => {
  console.log('An error occurred while retrieving token. ', err);
  // ...
});

获取令牌后,将其发送到您的应用服务器,并使用您首选的方法进行存储。

发送测试通知消息

  1. 在目标设备上安装并运行该应用。

  2. 确保应用在设备的后台运行。

  3. 打开 Notifications Composer,然后选择新建通知

  4. 输入消息内容。

  5. 选择发送测试消息

  6. 在标签为添加 FCM 注册令牌的字段中,输入您根据本指南的前一部分获得的注册令牌。

  7. 点击测试

在您点击测试后,目标客户端设备(在后台中运行应用)应该会在浏览器中接收到通知。

后续步骤

向前台应用发送消息

向在后台运行的应用成功发送通知消息后,您可参阅在 JavaScript 客户端中接收消息,尝试向前台应用发送消息。

除通知消息之外的其他功能

如果除了通知消息之外,您还要向应用添加其他更高级的行为,请参阅以下内容: