我是Java开发人员,我的客户希望使用CKAN制作Web应用程序。
但他希望CKAN提供的功能太多或者与CKAN的架构不相符。
所以我决定编写Java程序,它具有客户想要的功能,并使用Apache HttpComponent调用CKAN的RESTful API
但我遇到了授权问题。
因为我的To-Be系统无需登录CKAN即可运行,因此当我调用apis需要授权时,我必须知道用户API-KEY。 但除非登录CKAN网站(对吗?),否则我无法获得API-KEY,而且我认为通过其他方式获取某人的API-KEY是无稽之谈。 如果你不这么认为,你能告诉我如何获得用户API-KEY吗?
我还考虑了另一种方法,使所有对象都需要公开授权。 但是当我没有把API-KEY放在Http头文件中时,有些apis会发送授权错误,无论我打算处理的对象是公共还是私有
由于这些原因,发展一直在推迟。
你可以给我一些建议吗?答案 0 :(得分:2)
获取用户API密钥的唯一方法是让用户自己登录CKAN Web界面并转到他们的个人资料页面。
如果您正在编写API客户端,客户端通常的工作方式是要求用户在配置文件或GUI中输入用户名和API密钥。