javascript - 需要帮助来创建 server.js 以解决 CORS 问题
问题描述
所以,我需要点击一个 API 并在 html 元素中呈现响应。我有我的 app.js 这样做:
let url = 'http://localhost:80/db/abc/query/';
class abc extends Component {
state {userinput:""}
getResponse = () => {
axios.get(url+this.state.userinput, {
headers: {
'Content-Type': 'application/json'
}
})
.then(response => {
this.setState({results: response.data})
});
}
render () { //ignore the render for now
return ()
}
}
export default abc;
但是由于我收到了 CORS 错误,我创建了一个 server.js 并使用 # node server.js 命令启动了代理。但由于某种原因,我不断从 API 收到错误 500。
服务器.js
var express = require('express')
var cors = require('cors')
var app = express()
app.use(cors())
app.use('/', function(req, res) {
var url = 'https://' +
req.get('url').replace('localhost:80', 'my-real-host-fqdn:8122') +
req.url
req.pipe(request({ qs:req.query, uri: url })).pipe(res);
})
app.listen(80, function () {
console.log('CORS-enabled web server listening on port 80')
})
我在单击按钮时调用我的 getResponse(),它正在工作,但未包含在上面的摘录中。
错误信息:
GET http://localhost/db/abc/query/<userinput> 500 (Internal Server Error)
createError.js:17 Uncaught (in promise) Error: Request failed with status code 500
代理服务器错误:
CORS-enabled web server listening on port 80
TypeError: Cannot read property 'replace' of undefined
OR
CORS-enabled web server listening on port 80
ReferenceError: request is not defined
我对 server.js 文件和使用 express 不是很熟悉。这是如何工作的,我在这里犯了什么错误吗?
解决方案
那么对我来说,诀窍是从我的 server.js 中删除这一行:
req.pipe(request({ qs:req.query, uri: url })).pipe(res);
在此处发布此内容,以便对遇到类似问题的人有所帮助。感谢您尝试帮助伙计们!
推荐阅读
- android - 如何将项目动态添加到recyclerview?
- shell - 用于查找 /etc 中至少包含 7 个硬链接的所有文件的 shell 脚本
- python - 将索引转换为整数后,熊猫数据帧的 pyplot 中的 x 值错误。如何获得正确的值?
- php - 如何设置条件格式以使用phpspreadsheet为每一行着色
- c++ - 当我尝试构建 C++ 程序时出错
- c++ - Raspberry Pi 集群的库
- c - 通过函数传递结构指针然后访问结构数据
- c# - 正则表达式来解析某些 html 标签
- c# - SSIS 脚本组件在用户代码中遇到异常
- html - 如何使用 CSS Grid 和容器类将其分为两列?