苹果开放了CloudKit对服务器到服务器端的请求

苹果最近宣布可以连接苹果云平台的OS XiOSCloudKit框架,现在已经对服务器到服务器的网络请求进行了开放。它消除了以前只有iOS和MAC应用才能连接到CloudKit公共数据库的限制,使服务器直达苹果web站点。

CloudKit服务器到服务器的请求在原来已有特性的基础上新添加了允许开发者提供网络接口,使用户能访问自己的iCloud数据。服务器到服务器的请求根本目的是提供访问iCloud公共数据的权限,也为Parse关闭DBaaS在一定程度上提供了另外一种选择。

为了从服务器端程序或者脚本读取或写入数据到CloudKit数据库中,程序员首先需要使用OpenSLL生成钥匙串:

openssl ecparam -name prime256v1 -genkey -noout -out eckey.pem

然后,开发者应该到CloudKit故事版拿着公钥换取访问服务器的私钥。一旦输入公钥,作为网络服务请求子路径的KeyID就会立刻生成。苹果提供了一些开发者如何使用新的方式认证CloudKitJavaScript简单代码,如下:

[Current date]:[Request body]:[Web Service URL]

苹果还提供了使用curl来请求的简单代码,如下:

curl -X POST -H "content-type: text/plain" -H "X-Apple-CloudKit-Request-KeyID: [keyID]” -H "X-Apple-CloudKit-Request-ISO8601Date: [date]" -H "X-Apple-CloudKit-Request-SignatureV1: [signature]" -d '{"users":[{"emailAddress":"[user email]"}]}' https://api.apple-cloudkit.com/database/1/[container ID]/development/public/users/lookup/email

Stack Overflow上的一些用户也提供了JavaScript,PHP和Python语言的替代实现。

CloudKit给开发者提供了包括身份认证,私有和公共数据库,结构化的一些服务,例如基于plist,资产存储。

原文翻译自InfoQ

更多iOSAndroid精彩文章请关注微信公众账号:lecoding,你也可以扫描下方二维码关注我们。

qrcode_for_gh_af22362bf4bb_258.jpg