我以前有ElasticSearch 5.2,刚升级到6.0。
我正在尝试按照指南here创建索引模板,但收到错误
Content-Type header [application/x-www-form-urlencoded] is not supported
我的查询是
curl -X PUT localhost:9200/_template/template_1 -d '
{
"index_patterns": ["te*", "bar*"],
"mappings": {
"type1": {
"properties": {
"host_name": {
"type": "keyword"
}
}
}
}
}'
答案 0 :(得分:154)
要解决此问题,请添加curl选项class view extends Component {
render() {
const { ready, projects } = this.props
if (!ready)
return <LoadingView />
return projects.map((project, projectIdx) => <ProjectItem key={projectIdx} {...project} />)
function ProjectItem({ _id, title }) {
return <div key={_id}>
<a href={`/projects/${_id}`}>{title}</a>
</div>
}
}
}
此错误是由于ElasticSearch 6.0中引入的严格内容类型检查,如this post
中所述从Elasticsearch 6.0开始,包含正文的所有REST请求也必须为该正文提供正确的内容类型。
答案 1 :(得分:2)
"{ \"name\": { \"first\": {} }, \"address\": [ { \"address1\":\"lane\" } ] } "
在Windows中,当您将JSON作为参数时,请仅使用双引号。使用转义符。
答案 2 :(得分:1)
解决方案是添加app.UseAuthentication();
标头
Content-Type: application/json