2017-06-21 62 views
2

我已经成功集成了passkit,但在通过推送通知更新存折时遇到问题。 通知成功收到钱包但未通过更新。passkit - 通过推送通知不刷新。 (服务器响应格式错误)

,我已经实现了下面是步骤:

  1. 二手XMPP服务器(PHP)。
  2. 在php中使用此库生成通行证(https://github.com/tschoffelen/PHP-PKPass)。我已经替换了传球类型和球队标识符。
  3. 将代码添加到钱包的Swift代码。通过成功创建并添加到钱包。
  4. 刷新通过“拉刷新”正在钱包应用程序中工作。

这里是我完整的代码(PHP + SWIFT): https://www.dropbox.com/sh/e3wk8bwqgv8zs3f/AACZa_x7vD8KByl6WdrrgNExa?dl=0

下面是一些日志:

  1. 在创建通:https://www.dropbox.com/s/j14zfudy9mbllmp/add%20card.png?dl=0
  2. 的钱包添加卡: - https://www.dropbox.com/s/yek9rf8js45p8xb/add%20card%20to%20wallet.png?dl=0
  3. 拉动刷新钱包应用的两个要求https://www.dropbox.com/s/k1sfpxfbqlwwu6q/pull%20to%20refresh%20request%201.png?dl=0 https://www.dropbox.com/s/9jall5xmxpx806o/pull%20to%20refresh%20request%202.png?dl=0
  4. 收到推送通知时,从钱包2个请求: https://www.dropbox.com/s/sg3v9sgyu0w1e3n/push%20request%201.png?dl=0 https://www.dropbox.com/s/xd2us3771f2xn3s/push%20request%202.png?dl=0

的错误是服务器响应是畸形的...

请帮帮忙!

谢谢!

+0

你可以得到原始包 - 你有两个不同的内容长度381636拉和381635推。 – PassKit

+0

我每次都在为拉和推而生成新的包。我没有注意到内容的长度。 1个字节的差异可能会导致问题? 您是否看到错误“服务器响应格式错误...等等”? – Parimal

回答

1

我已经解决了这个我的自我。 问题出在'Last-Modified'标题日期格式。

应该header('Last-Modified: ' . gmdate('D, d M Y H:i:s T'));在PKPass.php文件

我收到推送通知和我的通行证,现在将自动更新。

谢谢!

+0

即时通讯有相同的问题,你可以帮我吗? https://stackoverflow.com/questions/44838318/apple-wallet-not-auto-updating-pass?noredirect=1#comment76770558_44838318 –

+0

嘿!当然。发布您的详细信息以了解。 – Parimal

+0

你介意帮我吗?我使用的资源最多,但不是很快。我有一个服务器页面 - 通行证单独生成。 https://stackoverflow.com/questions/45981359/apple-wallet-passkit-pass – Michael