0

我是 Java 开发人员,我的客户想使用 CKAN 制作 Web 应用程序。

但是他想要太多的功能超过 CKAN 提供或不符合 CKAN 的架构。

所以我决定编写具有客户想要的功能并使用 Apache HttpComponent 调用 CKAN 的 RESTful API 的 Java 程序

但是我遇到了授权问题。

因为我的 To-Be 系统无需登录 CKAN 也能正常工作,所以当我调用某些需要授权的 api 时,我必须知道用户 API-KEY。但是除非登录 CKAN 站点(对吗?),否则我无法获取 API-KEY,而且我认为通过另一种方式获取某人的 API-KEY 是无稽之谈。如果你不这么认为,你能告诉我如何获取用户 API-KEY 吗?

我还考虑了另一种使所有对象都需要公开授权的方法。但是,当我没有将 API-KEY 放入 Http 标头中时,无论我打算处理的对象是公共的还是私有的,一些 API 都会发送授权错误

由于这些原因,开发一直在延迟。

你能给我一些建议吗?

4

1 回答 1

2

获取用户 API 密钥的唯一方法是让用户自己登录 CKAN Web 界面并转到他们的个人资料页面。

如果您正在编写 API 客户端,客户端通常的工作方式是要求用户在配置文件或 GUI 中输入他们的用户名和 API 密钥。

于 2013-07-03T18:51:41.363 回答