问题标签 [cloudkit-web-services]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
831 浏览

google-apps-script - 在 Google Apps 脚本中使用 CloudKit Web 服务 API 查询 CloudKit 公共数据库时的 AUTHENTICATION_FAILED

我正在尝试使用 CloudKit Web 服务 API 从 Google Apps 脚本中的生产 CloudKit 容器的公共数据库中获取文章记录。

我的请求基于此页面上的文档。

这是我的代码:

UrlFetchApp.fetch(url, options)失败并出现此错误:

我已经进行了几个小时的故障排除,但我无法弄清楚我做错了什么。我也在我的开发环境中尝试过使用单独的令牌,并且发生了同样的事情。

此页面提到了ckWebAuthToken参数并说“如果省略和需要,则请求失败”,但我找不到任何说明什么请求需要ckWebAuthToken. 我假设我不需要ckWebAuthToken,因为我试图访问的记录在我的容器的公共数据库中,我得到一个AUTHENTICATION_FAILED错误而不是一个AUTHENTICATION_REQUIRED错误。

让我感到困惑的一部分是错误消息中出现的这个 URL:

我希望它是:

但我不知道这是否真的是被请求的 URL,当我记录url变量时,一切看起来都很好。

提前感谢您提供任何故障排除提示或解决方案!

更新

我尝试使用 Postman,并且请求使用相同的端点和 POST 数据。看起来containerURL 的组件被 Google Apps 脚本UrlFetchApp.fetch()方法损坏了。<?>似乎只在com.URL 中出现。

0 投票
1 回答
1387 浏览

cloudkit - 使用 Python 的 CloudKit API

我的 iOS 应用程序使用 CloudKit 作为后端。该应用程序主要收集简单的用户信息(姓名、公司、电子邮件电话)。

我想将所有这些数据从 cloudkit 仪表板导出到一个 csv 文件中,这样我就可以将这些数据上传到另一个数据库中。

我遵循了这个:https ://github.com/lionheart/requests-cloudkit来验证我的 api。

但是,我无法弄清楚如何从我的数据库中查询和获取记录。

当我执行时:

它返回:

但是,我希望它返回记录类型“Establishment”的所有记录。

任何帮助深表感谢!

谢谢!

0 投票
0 回答
167 浏览

ios - iOS CloudKit 获取资产停止工作

我正在开发将图像存储在云套件公共数据库中的应用程序。我使用执行查询从云套件中获取图像。突然它停止工作。它向我显示错误:

我已经在我的 iOS 设备中登录云套件。我正在使用沙盒环境。

现在查询操作确实完成了从未调用过。是不是一入无限等待?

0 投票
2 回答
485 浏览

javascript - CloudKit.js 的安全性

因此,我通读了 Apple 提供给我们的示例(CloudKit 目录),我注意到每次您想要编写或阅读时,都需要将 API 令牌放入脚本中。

现在 Javascript 是基于客户端的,这意味着每个用户都可以读取 API 令牌并可以读取和写入我的容器?!

此代码将位于其中一个 Javascript 文件中

现在的问题是:我是否遗漏了什么,或者是用户通过 Node 进行服务器到服务器通信的解决方案?

0 投票
1 回答
1042 浏览

cloudkit - 从 CloudKit 导出数据

我正在与 cloudkit 仪表板交互并查看我的应用程序收集的数据。

如何从仪表板(数据-> csv 或 json)导出所有数据,以便对其进行一些分析?

谢谢!

0 投票
1 回答
1445 浏览

ruby-on-rails - 给定私钥和消息,不确定如何生成 ECDSA 签名

我正在遵循Apple编写 CloudKit Web 服务请求的指南。我遇到的问题是“验证 Web 服务请求”下的第 2 步:

  1. 使用您的私钥计算此消息的 ECDSA 签名。

在此之前,我生成了我的证书,一个 .pem 文件,在文本编辑器中打开它时会显示我的私钥,所以我也有字符串格式的。

我还遵循了生成它所指的消息的步骤,现在我将其作为字符串。

因此,鉴于我有一个私钥(或 .pem 文件,如果需要)和一个字符串形式的消息,理论上我应该相当简单地获得消息的 ECDSA 签名,用我的私钥计算。但这就是我挣扎的地方。我在网上找到的库似乎采取了一种更为复杂的方法,具有不同的移动部件,没有引用 .pem 文件,并且谈论生成新的公钥/私钥。

对此步骤的任何帮助将不胜感激。

0 投票
1 回答
315 浏览

ruby-on-rails - 调用服务器到服务器 CloudKit Web 服务时出现授权错误

我正在尝试按照 Apple 的请求身份验证指南来实现与 CloudKit Web 服务的一些基本集成。我已经从这个这个问题中获得了一些关于如何正确授权请求的帮助,并且似乎正确地遵循了所有步骤,但我仍然收到AUTHENTICATION_FAILED来自 Apple 的 401 错误。

我定位的端点是一个 POST 端点,用于检索记录,给定记录名称。

我在代码中添加了注释以显示我在各个阶段获得的输出,并且我使用了替代证书,因此我没有提供真正的私钥:

最终结果是:

获救:401 未经授权

我不确定我在这里做错了什么 - 我似乎确实正确地遵循了所有步骤。希望日志可以帮助某人了解这可能出错的地方。

0 投票
1 回答
315 浏览

angular - Angular 2 和 Cloudkit JS - 解决响应承诺

我正在尝试让 Angular 2 与 Cloudkit JS 一起工作,目前是一个简单的 Todo。

todo.request.js

这返回Array [ Object, Object ]了我想要的,到目前为止一切都很好。

todo.service.ts有以下内容:

我假设我从todorequest.get()得到的是一个承诺,例如 Object { Symbol(record)_1.k31kpejw2af: Object }. 我如何将它转换为 Todo[],这样我就可以使用数据了?老实说,我不确定我做错了什么。

0 投票
1 回答
1085 浏览

javascript - Cloudkit JS 示例代码?

我有一个使用 Cloudkit 的 iOS 应用程序,现在我正在开发一个 Web 应用程序(使用 HTML5、CSS 和 Javascript)来注册用户。我已经阅读了文档并遵循了一些教程,但似乎没有任何效果。有时没有错误,所以我真的不知道我做错了什么。有人可以发布我如何使用 Cloudkit JS 保存和获取数据的示例代码吗?重要的是说我正在 Visual Studio 中开发它。拜托,我真的很绝望!

0 投票
1 回答
354 浏览

cloudkit - Cloudkit Web 服务查询 BadRequestException

我正在尝试向 CloudKit 查询名称等于字符串的简单对象,但我得到了一个BadRequestException.

RecordType 是带有参数“Name”和“Grade”的“Teacher”。

我猜我的查询过滤器有问题,但找不到任何不符合 Apple 参考规范的内容。

产生的错误:

{u'serverErrorCode': u'BAD_REQUEST', u'reason': u'BadRequestException: 无效值,预期类型 STRING 但实际值​​是 com.apple.cloudkit.ws.application.common.data.UnknownTypeModel' 类的对象, u'uuid': u'c254448d-130e-4c6c-8170-554d976a1789'}