iphone推送通知密码问题(pyAPns)

时间:2013-12-04 09:56:50

标签: python django push-notification apple-push-notifications django-1.2

我正在尝试基于PyAPN实现iphone的推送通知

当我在本地运行时它会阻止并提示我手动输入密码短语,直到我执行

我不知道如何设置它以便在没有提示的情况下工作

这是我的代码:

from apns import APNs, Payload
import optparse
import os


certificate_file = here(".." + app.fichier_PEM.url   )        
token_hex = '0c99bb3d077eeacdc04667d38dd10ca1a'
pass_phrase = app.mot_de_passe



apns = APNs(use_sandbox=True, cert_file= certificate_file)
payload = Payload(alert = message.decode('utf-8'), sound="default", badge=1)
apns.gateway_server.send_notification(token_hex, payload)


# Get feedback messages
for (token_hex, fail_time) in apns.feedback_server.items():
    print "fail: "+fail_time

2 个答案:

答案 0 :(得分:24)

创建不带短语的.pem文件时,请指定-nodes

创建没有短语的.pem文件

openssl pkcs12 -nocerts -out Pro_Key.pem -in App.p12 -nodes

使用短语

创建.pem文件
openssl pkcs12 -nocerts -out Pro_Key.pem -in App.p12

如果你有一个带密码的.pem文件,你可以删除它的PyAPN密码 使用以下

openssl rsa -in haspassword.pem -out nopassword.pem

参考

用于制作证书和其他配置。

用于与Apple推送通知服务(APN)交互的一些Python库

答案 1 :(得分:0)

尝试使用

apns = APNs(use_sandbox=True, cert_file='XYZCert.pem', key_file='XYZKey.pem')

您指定证书和私钥。