iOS - 用于自动更新的存折注册 URL

Posted

技术标签:

【中文标题】iOS - 用于自动更新的存折注册 URL【英文标题】:iOS - Passbook Registration Url For Automatic Updates 【发布时间】:2016-04-29 10:12:19 【问题描述】:

我在通过存折实现自动更新功能时遇到了一些问题。但是我目前的问题是(这不是一个很好的问题,我对网络端工作的了解不多,所以如果我问一些明显或愚蠢的问题,请原谅我)。 我在 pass.json 文件中使用这个 url 来对付 webServiceURL 的键。

https://serverURL/v1/devices/deviceLibraryIdentifier/registrations/passIdentifierAsIsPastedFromJsonFile/serialNumAsIsPastedFromJsonFile

现在,根据我的理解以及我在 *** 和苹果文档上阅读的内容。 deviceLibraryIdentifier 应该是由 ios 自己添加的,并将在 POST 请求中发送到服务器。因此,我们要从 URL 中获取 3 个值,从 header 中获取 1 个值,从 json payload/body 中获取 1 个值。我只是想确认我是否正确地做这些事情? (因为服务器端的人说他正在获取deviceLibraryIdentifier,作为字符串“deviceLibraryIdentifier”,并且他也没有在标题中获取authenticationToken 的任何密钥)。我错过了什么吗?

【问题讨论】:

【参考方案1】:

pass.json 中的 webServiceURL 应该只是 https://serverURL。设备将在每次请求之前自动完成 URI 的其余部分。您需要实现一个能够解析字符串的 RESTful 服务,识别正在请求 PassKit WebService 的 5 种方法中的哪一种,然后以正确的响应 as per the spec 进行响应。

因此,在注册的情况下,设备将获取您的服务器 URL,将 /v1/devices/deviceLibraryIdentifier/registrations/passTypeIdentifier/serialNumber 添加到 URL 以完成 URI。

然后,您的服务器应解析 URI,通过提供的 passTypeIdentifierserialNumber 识别通行证,并在您的设备数据库中创建与 deviceLibrayIdentifierdevicePushToken 对应的记录,该记录将包含在请求正文中的 JSON 对象。

为了帮助开发人员入门,Apple 提供了一个 Ruby and SQLite 示例,您可以直接实现,也可以移植到 php

【讨论】:

哦,这就是我遇到的问题,将整个 URL 放在 pass.json 中的 webServiceURL 键中。非常感谢,感谢您提供 Ruby 和 Sqlite 的示例,我以前没有遇到过。赞赏。

以上是关于iOS - 用于自动更新的存折注册 URL的主要内容,如果未能解决你的问题,请参考以下文章

更新存折钱包连接失败

更新存折通行证

更新存折错误 - 无法读取通行证,因为它无效

存折更新通知消息

带有 Estimote iBeacon 的 IOS 存折

如何写一个Andorid下自动更新的插件