node.js - Elasticseacrh 和 fetch:不支持 Content-Type 标头 [text/plain;charset=UTF-8]
问题描述
我正在尝试使弹性搜索服务器运行,但无法运行。
我在 localhost:9200 上运行了 Elasticsearch,在 localhost:3310 上运行了一个快速服务器,我正在运行 node.js 和我的代码(html 和 js)
我正在使用 fetch 向 elasticsearch 发出 http 请求以检索数据。如果我使用带有 url 的 lite 搜索,例如:
http://localhost:9200/movies2/_search?q=fields.title:Lord
有用。
但是当我尝试使用 fetch 请求时,例如:
const source= "http://localhost:9200/movies2/_search?"
var myInit = { method: 'POST',
mode: 'cors',
cache: 'default' ,
header : {
"Access-Control-Allow-Origin" : "*",
"Content-Type": "application/json"
},
body : JSON.stringify({
"query" : {
"match" : {[searchDSL]: x}
}
})
};
let reqLite = await fetch(source, myInit)
它没有。我有这个错误:
error: "Content-Type header [text/plain;charset=UTF-8] is not supported"
是的,我是菜鸟,我不知道为什么我会收到这条消息。我从我的请求、标头和 elasticsearch .yml 文件中授权了 CORS:
http.cors.enabled: true
http.cors.allow-origin: "*"
你能解释并教我为什么它不起作用吗?
解决方案
推荐阅读
- html - 网格系统。如何删除填充
- python - 无法使用单独的 html 容器在 shopee 上拉价格
- flutter - 带有 ScrollController 的嵌套 ListView 不滚动
- python - Pyhon 生成器函数中的异常处理
- python - Tesseract:无法从像素化字体中读取数字
- vb.net - 您如何延迟代码以将图像更改为另一个图像,然后返回
- python - Python Beautifulsoup,获取href标签,在标签中
- c# - 两个不同的循环或循环速度比较中的两个条件
- ng-pattern - 在 ng-repeat 中动态设置模式时,ng-pattern 不起作用
- reactjs - 如何向 ctx.renderPage 添加多个样式表?