javascript – AWS CloudSearch – 以JSON格式获取搜索结果
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了javascript – AWS CloudSearch – 以JSON格式获取搜索结果,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1630字,纯文字阅读大概需要3分钟。
内容图文
![javascript – AWS CloudSearch – 以JSON格式获取搜索结果](/upload/InfoBanner/zyjiaocheng/825/9bdd796f4e5c4ee6858254003f042834.jpg)
我正在从node.js中的Lambda函数在我的AWS CloudSearch域上执行搜索:
我上传了一个这样的文件:
{
“some_field”: “bla bla“,
“some_date_field”: 1.466719E9,
"number_field”: 4,
“some_string”: "some long string blabla"
}
我执行这样的搜索
var params = {
query: 'bla bla',
};
cloudsearchdomain.search(params, function(err, data) {
if (err) {
console.log(err, err.stack); // an error occurred
context.fail(err);
}
else {
context.succeed(data); // successful response
}
});
搜索工作并按照文档here CloudSearch返回文档
在一个命中的字段属性中的信息.这是一个例子:
{
"status": {
"timems": 2,
"rid": “blabla”
},
"hits": {
"found": 1,
"start": 0,
"hit": [
{
"id": “452545-49B4-45C3-B94F-43524542352-454352435.6666-8532-4099-xxxx-1",
"fields": {
“some_field”: [
“bla bla“
],
“some_date_field”: [
"1.466719E9"
],
"number_field”: [
"4"
],
“some_string”: [
"some long string blabla"
],
}
}
]
}
}
如您所见,所有字段都以数组中的字符串形式返回.
无论如何都要将结果作为JSON来保存
所有领域的类型?
解决方法:
在向AWS提交有关此报告后,我收到了以下回复:
您好,这实际上是预期的行为. SDK团队选择将“fields”属性实现为字符串键和字符串数组值的字典,以保持AWS SDK所在的各种语言的一致性.他们负责在客户端上处理各种响应格式(HTTP请求与SDK方法).有关详细信息,请参阅:https://github.com/aws/aws-sdk-js/issues/791
不幸的是,我上面描述的问题的唯一解决方案是:
1)创建一个解析器,根据您考虑数据类型的预期响应,根据需要解析结果
2)向您的cloudsearch索引(文本类型)添加一个新字段,其中包含整个json对象/文档的字符串化版本.然后,您可以在此处使用JSON.parse()来获取JSON格式的文档.这个解决方案并不理想,因为它会为您的文档添加不必要的文本块,但事实证明它是上述问题的快速解决方案.
如果有人知道,我很想听到更多的解决方案.
内容总结
以上是互联网集市为您收集整理的javascript – AWS CloudSearch – 以JSON格式获取搜索结果全部内容,希望文章能够帮你解决javascript – AWS CloudSearch – 以JSON格式获取搜索结果所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。