在发送推送通知时,我收到了(未捕获(承诺中)ReferenceError:未定义require(…))error.here是我的代码

 const endPoint = subscription.endpoint.slice(subscription.endpoint.lastIndexOf('/')+1);
console.log(endPoint);
var gcm = require('node-gcm');
var message = new gcm.Message({
    notification: {
        title: "Hello, World",
        icon: "ic_launcher",
        body: "This is a notification that will be displayed ASAP.",
        tag:"hello"
    }
});

var regTokens = [endPoint];
  var sender = new gcm.Sender('AIzaSyD9Bcxd_MQZFoGjO1y_hPm-xUdgnM25Ny4'); //API Key
  // Now the sender can be used to send messages
  sender.send(message, { registrationTokens: regTokens }, function (error, response) {
   if (error) {
      console.error(error);
      res.status(400);
    }
   else {
      console.log(response);
      res.status(200);
    }
  });
      })
    })
}


错误的屏幕截图
enter image description here

最佳答案

该代码使用require,因此在我看来,您正在尝试在浏览器中使用节点代码。为此,您将需要使用Browserify之类的内容,尽管我不确定node-gcm是否适用,因为它可能对发送网络请求有一定的要求,而没有跨源限制等。

关于javascript - 通过GCM在渐进式Web应用程序中推送通知,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36619584/

10-12 12:56