我正在尝试将我的数据文档上传到 CloudSearch。我正在将数据上传到一个名为 test.json 的文件中,它具有以下内容。
[
{
"type": "add",
"id": "1-1",
"fields": {
"id": 1,
"type": 1,
"address": "Moeboda 4",
"city": "Alvesta",
"country": "Sweden",
"rooms": 3,
"size": 45,
"price": 275000
}
}
]
我遇到以下问题:
CloudSearch 告诉我,上传的唯一字段是:
content, content_encoding, content_type, resourcename
当我下载生成的“批处理”时,我得到以下数据:
[ { "type" : "add", "id" : "test.json", "fields" : { "content" : "[\r\n\t{\r\n\t\t\"type\": \"add\", \r\n\t\t\"id\": \"1-1\", \r\n\t\t\"fields\": {\r\n\t\t\t\"id\": 1,\r\n\t\t\t\"type\": 1,\r\n\t\t\t\"address\": \"Moeboda 4\",\r\n\t\t\t\"city\": \"Alvesta\",\r\n\t\t\t\"country\": \"Sweden\",\r\n\t\t\t\"rooms\": 3,\r\n\t\t\t\"size\": 45,\r\n\t\t\t\"price\": 275000\r\n\t\t}\r\n\t}\r\n]", "resourcename" : "test.json", "content_encoding" : "UTF-8", "content_type" : "application/json" } } ]
所以我猜 AWS CloudSearch 认为我的 JSON 是一个字符串,所以它创建了一个新文件,其中包含其现在的字段(内容、资源名称、内容编码、内容类型)并用我的“字符串”填充它,然后也将其转义,因为字符串应该被转义。
我不知道为什么会这样,我已经为此工作了好几个小时。我一直在尝试 .txt 文件、.json、更改字符集、删除括号等,但没有任何效果。
是的,我已经设置了索引选项,我已经设置了我要上传的所有字段。看截图: