QCon北京「鸿蒙专场」火热来袭!即刻报名,与创新同行~ 了解详情
写点什么

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:001880

评论

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

微服务之道:8个原则,打造高效的微服务体系

不在线第一只蜗牛

微服务 微服务架构

专访|严靖炜:从参与 MatrixOne 到论文入选 IEEE BMSB 2023

MatrixOrigin

数据库 云原生 超融合

记一次Native memory leak排查过程 | 京东云技术团队

京东科技开发者

native 企业号 6 月 PK 榜 memory leak

资源池化:多租户与数据库整合解决方案

TiDB 社区干货传送门

新版本/特性解读 数据库架构设计

微服务架构的重要性:现代应用开发的关键趋势

2756

微服务架构 微服务、

如何用smardaten90天快速开发并上线智慧空间loT物联平台?

热爱编程的小白白

带你了解爆火的AI框架-LangChain

派大星

来了,kubesphere轻松搭建redis

夜栩

后端 docker image KubeSphere

干货|三个维度详解 Taier 本地调试原理和实践

袋鼠云数栈

开源 前端

迄今为止最完整的DDD实践

阿里技术

架构 DDD

TIDB v7.1 reource control资源管控特性体验贴

TiDB 社区干货传送门

版本测评 7.x 实践

在找稳定的企业级数据云平台?奇点云DataSimbaR4.9 LTS发布

极客天地

无类教育完善内训体系,开启校企合作新篇章

极客天地

发送Tidb告警信息到企业微信群实践

TiDB 社区干货传送门

监控

TiDB 多租户方案和原理

TiDB 社区干货传送门

TiDB 底层架构 新版本/特性解读 7.x 实践

从零开始初识机器学习 | 京东云技术团队

京东科技开发者

人工智能 机器学习 企业号 6 月 PK 榜

TiDB 升级利器(参数对比)——TiDBA

TiDB 社区干货传送门

7.x 实践

探索To-D,落地好大夫效能平台

方勇(gopher)

DevOps SRE 效能平台

万木健康:用AIGC创造医生的第25个小时|TE洞察

TE智库

人工智能 AIGC 医疗健康

毕业季 | 程序员初入职场必备软件开发神器

华为云开发者联盟

云计算 软件开发 华为云 华为云开发者联盟 企业号 6 月 PK 榜

关于 3.0 和 2.0 的数据文件差异以及性能优化思路

爱倒腾的程序员

慧博云通加入飞桨技术伙伴计划,共同推动企业 AI 应用创新

飞桨PaddlePaddle

人工智能 百度 paddle 飞桨 百度飞桨

券商网络信息安全启动三年计划圈重点

原点安全

全面解析 | 大模型时代如何利用弹性计算服务应对大算力挑战

阿里云弹性计算

云计算 弹性计算 AIGC

【TiDB v7.1.0】资源管控调研及评测

TiDB 社区干货传送门

7.x 实践

基于驱动因素的全面预算管理方式

智达方通

智达方通 全面预算管理 业财驱动 驱动因素

OpenResty 安装

流火

TICDC 数据同步至 MySQL初体验

TiDB 社区干货传送门

迁移

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