【发布时间】:2012-08-07 22:18:03
【问题描述】:
我正在学习一个教程,该教程要求我打开一个套接字并发送带有证书的有效负载:http://blog.serverdensity.com/how-to-build-an-apple-push-notification-provider-server-tutorial/。
我在弄清楚如何使用 python 执行以下操作时遇到了一些困难:
// Open the connection
$apnsHost = 'gateway.sandbox.push.apple.com';
$apnsPort = 2195;
$apnsCert = 'apns-dev.pem';
$streamContext = stream_context_create();
stream_context_set_option($streamContext, 'ssl', 'local_cert', $apnsCert);
$apns = stream_socket_client('ssl://' . $apnsHost . ':' . $apnsPort, $error, $errorString, 2, STREAM_CLIENT_CONNECT, $streamContext);
// Send the payload
$apnsMessage = chr(0) . chr(0) . chr(32) . pack('H*', str_replace(' ', '', $deviceToken)) . chr(0) . chr(strlen($payload)) . $payload;
fwrite($apns, $apnsMessage);
// Close Resources
socket_close($apns);
fclose($apns);
我过去使用过 python-requests。但仅适用于简单的 get 请求。
我可以使用 python-requests 在 python 中重写上面的代码,还是有更适合这个任务的东西?
【问题讨论】:
-
有什么理由不能使用pyapns 代替吗?
-
你找到解决办法了吗?
标签: php python sockets python-requests