Web services 为什么上次更新(空)
我创建了一个通行证,可以将设备注册到我的服务器。我还通过更改一些内容并在pass表中插入新的pass行来更新这个pass。但为什么在控制台中最后更新(null)?这是我从控制台得到的:Web services 为什么上次更新(空),web-services,ios6,passbook,Web Services,Ios6,Passbook,我创建了一个通行证,可以将设备注册到我的服务器。我还通过更改一些内容并在pass表中插入新的pass行来更新这个pass。但为什么在控制台中最后更新(null)?这是我从控制台得到的: Apr 6 10:30:29 CamMobs-iPod4 passd[21]:获取串行任务(对于设备b6511c0dd47d04da449ce427b27fea74,pass类型pass.cam-mob.passbookpasstest,上次更新(null);,带有web服务urlhttp://192.168.1
Apr 6 10:30:29 CamMobs-iPod4 passd[21]:获取串行任务(对于设备b6511c0dd47d04da449ce427b27fea74,pass类型pass.cam-mob.passbookpasstest,上次更新(null);
,带有web服务urlhttp://192.168.1.202:8888/passesWebserver/)获得代码为200的响应
每当在设备的存折库中接受或替换.pkpass捆绑包时,存折将使用上次更新的属性标记该密码
此属性通常由web服务器在第一次下载pass时发送的Last Modified
头设置,并且您的web服务随对“”响应的每个响应一起发送
Passbook还使用“serialNumbers
”方法轮询您的web服务,并使用deviceLibraryIdentifier
和passTypeIdentifier
作为标准
“”响应应包含一个标记lastUpdated
,指示上次更改此查询结果的时间(即上次更新使用passTypeIdentifier
注册到此deviceLibraryIdentifier
的通行证的时间)
但是,当存折第一次发送“”时,它将不会收到lastUpdated
标记,这就是它在控制台日志中显示null
的原因。此外,发送lastUpdated
标记是可选的,因此,如果该标记不存在,或者没有正确发送,则您将始终看到此请求的last updated(null)
您可以自由使用任何您喜欢的
lastUpdated
标记。实现的最简单的解决方案是unix时间戳,因为不需要混淆日期格式。因此,在打开与Apple Push Notification Service(APNS)的连接之前,我需要对“获取与设备相关的通行证的序列号”和“获取通行证的最新版本”做出响应?是-您需要实现web服务的每个方法。您可以测试“获取最新版本的通行证”方法,方法是翻转通行证并在背面向下拉以手动触发刷新。要获取与设备相关的通行证序列号,我使用此标题:标题('Last-Modified:')。日期(“D,D M Y H:I:s”,filemtime('/Applications/MAMP/htdocs/passesWebserver/DigiClubCard.pkpass'))。'GMT+07:00');为什么上次更新的标记仍然为空?上次更新的标记由您在上次JSON响应“获取与设备关联的过程的序列号”时发送的上次更新标记设置请求。如果您从未向此方法发送过有效响应,则LastUpdate将始终为空。Passbook不使用此调用的上次修改的头-如果仅在发送.pkpass文件时使用它。如何将.pkpass文件发送到设备?