我为apple推送服务获得了以下代码:
agent
.set('cert file', join(__dirname, 'cert.pem'))
.set('key file', join(__dirname, 'key.pem'))
.enable('sandbox');
当我在localhost上运行我的服务器时,我输入pem key,服务器开始工作。
如何将其设置为自动输入,因为我在heroku上部署它git push heroku master
并且服务器失败,因为我没有输入pem键。
答案 0 :(得分:3)
用于发送通知的库是否支持传递证书/密钥的字符串数据?您可以尝试使用heroku config
命令在heroku上将内容添加为环境变量。例如:
heroku config:set CERT_DATA='content of the file'
然后,您可以在代码中引用CERT_DATA
而不是读取文件。您还需要一种在开发过程中设置环境变量的方法,但我不熟悉可用于建议如何执行此操作的工具。
答案 1 :(得分:1)
我使用了这些命令:
openssl genrsa -out privatekey.pem 1024
openssl req -new -key privatekey.pem -x509 -days 7300 -out certificate.pem
我在Node.js HTTPS服务器中使用它们。