位置: 编程技术 - 正文

Python搭建APNS苹果推送通知推送服务的相关模块使用指南(python搭建平台)

编辑:rootadmin

推荐整理分享Python搭建APNS苹果推送通知推送服务的相关模块使用指南(python搭建平台),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:python开发iosapp,python ios,app python搭建,ipad搭建python,app python搭建,ipad搭建python,python搭建api,app python搭建,内容如对您有帮助,希望把文章链接给更多的朋友!

APNS 是苹果为IOS设备提供的推送服务,全称是(Apple Push Notification service)。 如果你有接触移动互联网相关的开发的话,应该对它很熟悉。

接下来我会给大家简单介绍一下Python下的一些APNS相关的模块以及其特点。

模块介绍:

PyAPNs

项目地址: 只有行,实现了APNS的基本功能,包括发送推送、使用Frame群发推送、feedback 接口等。

它的所有验证都是在客户端做的,比如每一个Payload不超过字节。简单来说,就是尽量复用你的链接,不要频繁的建立和断开,不然会被当做DoS攻击处理。所以 我们使用它来发送推送时应该这么干:

复用这个gateway_server也就是连接,但是到APNS Server的链接是很不稳定的,很多情况下 都会被断开,比如网络原因、发送了非法的token等。所以我们还需要一个重连的机制。

但PyAPNs模块没有为你处理这些,所以你需要自己去处理那些出错的情况,这也是使用 这个模块最不方便的地方。

所以我的建议是,除非你自己需要去写一个APNS的Provider,那你可以以这个模块作为起点。 否则,如果你想在你的项目里面快速用上推送服务的话,建议还是选择别的模块。

示例:

Python搭建APNS苹果推送通知推送服务的相关模块使用指南(python搭建平台)

pyapns(twisted)

项目地址: 使用下来其实还是挺不错的,这个项目的主要特点是:

它其实是一个基于twisted的server,所有发送推送的请求都通过它来和苹果的服务器交互。对Django和Pylons有原生支持。支持多个APP。因为和苹果的推送服务器是由这个provider维持的长连接,所以你每次发送推送的时候都直接 这个provier进行叫交互,这样的的好处是每一次的接口调用返回都很快,真正推送到苹果服务器的过程 则是由这个provider异步来完成。

但是这个模块很长时间都没有维护了,其实Apple那边的协议在这段时间里已经进行了一些更新。 但这个模块没有跟上。

我使用这个模块碰到的最大的问题就是 群发推送的效果得不到保证。

虽然这个模块的demo里面有对批量发送推送进行支持,但是我的使用经验是,这个模块的群发 推送效果比较差,而且缺少从苹果Server拿到错误反馈的逻辑。

因为Twisted的代码风格实在不怎么喜欢,所以我群发碰到问题后开始寻找别的解决方案。

apns-client

项目地址: 下一次的推送。支持改进过的的协议格式。Apple的程序员们设计了一个臭名昭著的推送协议。他们更新了一个版本,这个版本可以让你知道 每一次群发推送里面到底是哪一个单独的消息出了问题。清晰的Python API没有把验证这块写进代码里,而是直接返回APNS的错误信息使用这个模块来发送推送也很简单:

对于我来说,这个模块最大的优点就是为你处理了连接有可能被异常断开重连的情况。而且代码不像 pyapns这样晦涩,更直观,可读性更高。所以你如果要在它的基础上做一些修改也没有任何问题。

经过我的使用经验,使用apns-client来处理百万级别这种量级的推送没有任何问题,到达率也很好。

所以如果你没有特殊的需求的话,apns-client应该是你最好的选择。

从源码解析Python的Flask框架中request对象的用法 fromflaskimportrequestFlask是一个人气非常高的PythonWeb框架,笔者也拿它写过一些大大小小的项目,Flask有一个特性我非常的喜欢,就是无论在什么地方,如果

Python中的Descriptor描述符学习教程 Descriptor是什么?简而言之,Descriptor是用来定制访问类或实例的成员的一种协议。额。。好吧,一句话是说不清楚的。下面先介绍一下Python中成员变量的

深入理解Python变量与常量 变量是计算机内存中的一块区域,变量可以存储规定范围内的值,而且值可以改变。基于变量的数据类型,解释器会分配指定内存,并决定什么数据可

标签: python搭建平台

本文链接地址:https://www.jiuchutong.com/biancheng/386943.html 转载请保留说明!

上一篇:Python的Django框架中使用SQLAlchemy操作数据库的教程(python django 项目框架图)

下一篇:从源码解析Python的Flask框架中request对象的用法(python源码分析工具)

  • 个税必须每个人交吗
  • 准予扣除的税金及附加怎么算
  • 预收账款期末余额计算公式
  • 职工意外伤害险赔偿范围
  • 什么情况企业需要经侦
  • u8反记账操作步骤
  • 管理费用贷方余额借方是负数怎么结转
  • 机票里面的其他税费抵扣吗
  • 房地产开发商转型
  • 周转材料核算科目是什么
  • 交通费补贴报销的会计分录怎么做?
  • 开增值税票需要对方什么资料
  • 城建税按实际缴纳增值税
  • 开票信息里面的电话号码怎么来的?
  • 何为销项税额
  • 借其他应收贷应付
  • 无形资产可以作为仓储物
  • 递延所得税资产和递延所得税负债
  • 新版edge浏览器如何打开ie浏览器
  • 100%控股有什么风险
  • 利润分配属于什么科目
  • 促销费影响主营利润吗
  • 控股子公司收购母公司
  • 广告制作包括印花吗
  • 餐饮行业必须要对公账户吗
  • win11安装失败0xc1900201
  • 火车票可以报账吗
  • 员工的出差补贴计入什么科目
  • 入库的原材料属于什么科目
  • 差额部分 扣除部分
  • 共管账户和监管账户是一样的吗知乎
  • 销售多余材料计入什么
  • 企业常用的成本核算方法有哪些
  • 接受专利投资会亏本吗
  • 固定资产付款流程
  • 自有房子出租怎么做账
  • 企业之间可以背书吗
  • 超过500万需要补税吗
  • 应收账款和其他应收款的区别
  • vm网络不可达
  • linux用mv文件移动指定文件
  • 银行存款利息的会计科目
  • 机器维修费属于什么会计科目
  • sqlserver2016维护计划
  • sql server 2008怎么使用sql语句
  • 一个简单的脚本
  • 开发票该怎么操作?
  • 个人所得税手续费返还账务处理
  • 现金流量表季度期初现金余额怎么填
  • 装卸费专票
  • 计提的应收账款坏账准备的科目有哪些
  • 去年的亏损今年第一季度可以弥补吗
  • 一般纳税人金税盘分录
  • 员工外出培训报告范文
  • 累计盈余的主要来源有
  • 收到第三方补助怎么做账
  • 设计费可以一次支付吗
  • 社保税款所属期申报错了要紧吗?
  • 抵扣与扣除的区别
  • 仓库周转率是什么意思
  • sql server的基本概念
  • 如何动态修改mysql的全局参数
  • 完整版的苏若雪和沈浪
  • winadm.exe - winadm是什么进程
  • 计算机 win10 桌面
  • Win7系统如何开启移动到文件夹选项
  • 不经过回收站直接删除文件的操作是
  • 控制台报错是前端问题吗
  • 基于专业性的家校双向互动,需要家长的学校教育参与
  • cocos2dx3.3 便条提示语功能简单实现
  • CalledFromWrongThreadException: Only the original thread that created a view
  • jquery操作元素内容的方法
  • 浅谈自己对教育的理解
  • 密云到顺义区医院公交路线
  • 宁波税务局网上办税服务厅
  • 广东省国家税务总局稽查局局长
  • 草原补偿标准
  • 教师资格证认定流程
  • 跪式服务礼仪规范图片
  • 企业所得税年报职工薪酬纳税调整明细表
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设