firebase messages.getToken()返回null

时间:2018-09-04 04:55:01

标签: javascript firebase google-chrome firebase-cloud-messaging

我正在关注本教程Set Up a JavaScript Firebase Cloud Messaging Client App。当我第一次运行页面时,当页面要求我显示通知时,我单击了“阻止”而不是“允许”。 从Chrome阻止列表Turn notifications on or off中删除网站后,messaging.getToken()始终返回null

我尝试了messaging.deleteToken(),但是无论如何这都需要一个有效的令牌(不是null)。

如何解决这个问题?

3 个答案:

答案 0 :(得分:0)

  1. 点击“查看网站信息”图标
  2. 将通知设置为“允许” Allow Notification
  3. 点击Cookie
  4. 选择主机名(在我的情况下为localhost) remove cookies
  5. 点击删除
  6. 点击完成

答案 1 :(得分:0)

您必须在项目文件夹中启动服务器

php -S 127.0.0.1:8080

,这样访问 http://127.0.0.1:8080/

如果您从这样的另一个文件夹登录,它将永远无法工作 http://127.0.0.1/miproyecto/ http://localhost/myproject/

请记住在根目录中创建文件firebase-messaging-sw.js https://firebase.google.com/docs/cloud-messaging/js/receive?hl=en-419


Debes iniciar un servidor en la carpeta de tu proyecto

php -S 127.0.0.1:8080

y accederasí http://127.0.0.1:8080/

NUNCA funcionara si加入了dedes otra carpetaasí http://127.0.0.1/miproyecto/ http://localhost/miproyecto/

recuerda crear el archivo firebase-messaging-sw.js en la raiz https://firebase.google.com/docs/cloud-messaging/js/receive?hl=es-419

答案 2 :(得分:0)

别忘了在您的根存储库 公共文件夹中制作一个 firebase-messaging-sw.js 文件根仓库。然后,通过本地主机服务器打开该文件。例如: localhost:5000 / firebase-messaging-sw.js

如果仍然出现错误页面,则需要创建 manifest.json 文件。在此文件中,放入您的 gcm_sender_id messagingSenderID

{
     "gcm_sender_id" : "587997283287" 
}

我可以解决此问题。