写点什么

Apple 开放了 CloudKit 的 Server-to-Server 请求

  • 2016-03-09
  • 本文字数:941 字

    阅读完需:约 3 分钟

Apple 最近宣布 OSX 和 iOS 中提供访问 Apple 云平台的 Cloudkit 框架开放了 Server-to-Server 的 web 请求。这表明 Apple 解除了 CloudKit 公共数据库之前只能在 iOS 和 Mac app 到苹果的网站之间通信的限制。

CloudKit Server-to-Server 的请求在已有的功能上增加了新特性,开发者可以通过这个功能提供一个供用户直接访问他们 iCloud 数据的 web 界面。Server-to-Server 的请求旨在提供可以访问 iCloud 公共数据库的权限,也部分提供给开发者可以代替 Parse DBaaS 的另一个选择,因为 Parse DBaaS 平台最近宣布将要关闭服务。

为了从服务端进程或脚本读取 Cloudkit 公共数据库,开发者首先需要用 OpenSSL 生成一个秘钥对:

复制代码
openssl ecparam -name prime256v1 -genkey -noout -out eckey.pem

然后到 CloudKit dashboard ,找 API Access/Server-to-Server Keys 将公钥与一个 CloudKit 容器绑定。一旦公钥被存储,会分配一个 keyID,并且在 web 服务请求的子路径需要加上 keyID。Apple 提供了一些 JavaScript 代码示例演示如何使用新方法验证 Cloudkit。特别是开发者需要构造一个包含三个参数的字符串:

复制代码
[Current date]:[Request body]:[Web Service URL]

上面的字符串在 request 中会用到,正如 Apple 提供的示例代码一样:

复制代码
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 的资源存储。

查看英文原文: Apple Open CloudKit to Server-to-Server Requests


感谢张龙对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群InfoQ 好读者(已满),InfoQ 读者交流群(#2)InfoQ 好读者)。

2016-03-09 18:001994

评论

发布
暂无评论
发现更多内容

插上NIO翅膀,FunTester飞上天

FunTester

nio 性能测试 接口测试 测试框架 FunTester

微服务架构师-docker私有镜像仓库的配置和使用

学神来啦

Linux 容器 微服务 运维 架构师

「最好」的敌人是「好」

非著名程序员

提升认知 认知提升 个人提升 8月日更

容器化 | ClickHouse on K8s 部署篇【建议收藏】

RadonDB

数据库 Kubernetes Clickhouse

数字人民币专利数激增, “区块链”领域大有可为

CECBC

2021 年 iOS 应用程序开发七种最佳语言

iOSer

Java flutter ios objective-c swift

OceanBase源码解读(二):SQL的一生

OceanBase 数据库

数据库 分布式数据库 oceanbase OceanBase 开源 OceanBase 社区版

浅析fil:fil未来价值到底在哪?

区块链 分布式存储 IPFS fil FIL价值

神策分析 iOS SDK 全埋点解析之元素点击与页面浏览

神策技术社区

大前端 后端 数据 埋点

架构实战营模块五作业

maybe

基于springcloud springboot vue elementui商城源码毕设实战

清风

Vue Java 分布式 毕业设计

上游思维:在系统的关键处找一个支点

石云升

读书笔记 8月日更 上游思维

牛客网论坛最具争议的Java面试成神笔记,GitHub已下载量已过百万

Java~~~

Java 架构 面试 算法 架构师

还不了解 static ?年轻人,劝你耗子尾汁...

神策技术社区

数据分析 大前端 后端 埋点

python——execl写入数据2

YUKI0506

为什么你的数据总是丢?

神策技术社区

数据分析 大前端 后端 埋点

2021 OceanBase 数据库大赛来袭!邀你改编世界,码出未来

OceanBase 数据库

数据库 oceanbase OceanBase 开源 OceanBase 社区版 OceanBase 数据库大赛

八家知名大厂联合手写的Java面试手册刚上线!竟就到达巅峰?

Java~~~

Java 架构 面试 JVM 多线程

python——利用tkinter制作可视化窗体1

YUKI0506

OceanBase数据库源码解读之模块结构

OceanBase 数据库

数据库 分布式数据库 oceanbase OceanBase 开源 OceanBase 社区版

activiti整合在现有系统,业务绑定,流程在线设计@附源码

金陵老街

ipfs矿机公司实力排行如何?ipfs矿机排名如何?

ipfs矿机公司实力排行如何 ipfs矿机排名如何

经济学人:若比特币价格清零会怎样?

CECBC

当知识图谱遇上预训练语言模型

博文视点Broadview

Activity之间跳转时,生命周期的变化

W🌥

android 8月日更

DAPP去中心化交易所开发|DAPP与APP的区别

Geek_23f0c3

交易所开发 去中心化交易所系统开发 DAPP智能合约交易系统开发

GIT远程仓库

一个大红包

8月日更

ipfs挖矿是怎样赚钱的?ipfs挖矿值得投资吗?

IPFS挖矿值得投资吗 IPFS挖矿是怎样赚钱的

金融助力补链强链 科技发挥关键作用

CECBC

python3学习笔记-20210817(变量名与字符串)

姬翔

CODING DevOps 高级架构师王炜入选木兰开源社区首批导师

CODING DevOps

DevOps Nocalhost 木兰开源社区 开发者生态

Apple开放了CloudKit的Server-to-Server请求_移动_Sergio De Simone_InfoQ精选文章