我试图将firebase-queue工作人员转换为向云函数发送推送通知。我使用node-apn向iOS设备发送推送通知。它需要设置一个连接,这需要我指定一个key.pem文件和一个cert.pem文件。这些文件存在于工人js文件所在的相同位置,并且工作时没有任何问题。我把代码转到了云函数,但在日志控制台中得到了这个错误。
{ Error: ENOENT: no such file or directory, open './cert.pem'
at Error (native)
errno: -2,
code: 'ENOENT',
syscall: 'open',
path: './cert.pem' } 'Unable to send push notification to iOS device. Socket Error'下面是如何在代码中指定文件和创建连接的方法
var connectionOptions = {
cert:'./cert.pem',
key:'./key.pem',
production: true
};
var apnConnection = new apn.Connection(connectionOptions);我尝试将cert文件指定为./cert.pem和cert.pem,但在这两种情况下都出现了类似的错误。我想问题是.pem文件没有随函数一起提供。
如何在云函数中指定这样的文件?
发布于 2017-07-29 11:02:00
您的路径引用对于firebase函数不太合适。
它应该是:
var connectionOptions = {
cert:__dirname + '/cert.pem',
key:__dirname + '/key.pem',
production: true
};https://stackoverflow.com/questions/43309472
复制相似问题