我正在尝试使用node-apn设置Apple推送通知服务。我已经编写了项目的其他部分(RESTful API,后端,消息队列)但我遇到了node.js部分的阻塞问题。
我必须向node-apn传递密钥和证书,这通常是将一对文件名作为选项传递给它。但是这种设置并不理想,我需要将它们作为变量传递。我已经更改了node-aps的源代码,如果不是因为我在研究解决方案时没有考虑到这个问题,它会很乐意寻找这些变量。
Javascript不接受多行变量,因此我无法以此格式传递证书或密钥:
var cert = '-----BEGIN CERTIFICATE-----
[cut]
-----END CERTIFICATE-----';
我尝试使用\来转义换行符,但最后我得到了一行证书/密钥,因此我收到了“PEM_read_bio:no start line”错误。
有没有合适的解决方法?
答案 0 :(得分:0)
您可以在字符串中添加换行符:
var cert = '-----BEGIN CERTIFICATE-----\n\
[cut]\n\
-----END CERTIFICATE-----';
但我认为将证书文件单独放置是一个更好的主意。在我看来,上面的代码看起来并不理想。