我安装了CKAN2.8版本,并且我正在尝试使用内置CKAN模块名“autocomplete.js”从https://terminologies.gfbio.org/api/中获取关键字/术语。[https://github.com/ckan/ckan/blob/master/ckan/public/base/javascript/modules/autocomplete.js#L76]
但由于我提供了指向"data-module-source = https://terminologies.gfbio.org/api/terminologies/search?query=Acetobacter%20aceti“的端点链接,因此没有响应...我在CKAN >>的前端代码
<input name="search" data-module="autocomplete" data-module-
source="https://terminologies.gfbio.org/api/terminologies/search?
query=Acetobacter%20aceti" />但是没有通过以下代码从CKAN site生成到远程端点的API调用,即"https://terminologies.gfbio.org/api“。
<input name="search" data-module="autocomplete" data-module-
source="https://terminologies.gfbio.org/api/terminologies/search?
query=Acetobacter%20aceti" />发布于 2019-09-10 10:05:07
自动完成模块位于ckan/javascript模块中,因此被设计为在客户端运行。也就是说,浏览器上的输入表单应该调用API。
因此,您可能看不到从ckan服务器到API的调用。但您可能会在浏览器的网络输出中看到它。
其次,您需要生成一个适当的API调用,该调用接受不完整的字符串并返回匹配列表。
例如,标准标记搜索调用(在键入java之后)文本可能返回{"ResultSet":{“http://ckan:5000/api/2/util/tag/autocomplete?incomplete=ora”:{id:“ResultSet”,text:"orange“}
因此,您将需要远程API以可显示的类似字符串数组的形式返回。
可能有一些方法可以覆盖插件,以便在客户端解析和重构API结果-如果你找到了,请让我知道:)。否则,您可能需要一个服务器端微服务,它接受部分请求,调用gfbio api并重塑结果。
https://stackoverflow.com/questions/57786605
复制相似问题