mysql - Express 后端在 MySQL 查询中给出空结果
问题描述
我有一个从 MySQL 后端检索数据的应用程序。我的其他 get 函数成功地查询了 MySQL 数据库,但下面的函数没有,即使当我在 MySQL 工作台中测试它时查询有效。
router.get('/duedates', function(req, res, next) {
con.query("SELECT * FROM due_dates", function(err, result) {
if(err) {
console.log("Error")
throw err;
}
console.log("Here")
res.json(JSON.stringify(result))
});
})
不明白为什么,这个和我其他的函数基本一样,due_dates是一个有效的数据表。在浏览器中,我只得到一个空结果“[]”
我该如何解决?
编辑:这是一个工作功能。出于某种原因,即使其他功能运行良好,我也无法从上述功能发送任何响应。
router.get('/:day', function(req, res, next) {
monthToNum = {Aug : '08', Sep: '09'}
year = req.params.day.toString().split(' ')[3]
month = monthToNum[req.params.day.toString().split(' ')[1]]
day = req.params.day.toString().split(' ')[2]
//let date = req.body.date.toString().substring(0, 10);
let date = year + '-' + month + '-' + day;
con.query("SELECT * FROM schedule WHERE date = ?", [date], function(err, result) {
if(err) throw err;
var answer = result;
res.json(JSON.stringify(result))
});
})
这是我发送获取请求的方式
fetch('http://localhost:5000/backend/duedates', {method: "GET", headers: {'Accept' : 'application/json', 'Content-Type' : 'application/json'}}).then(res => res.text()).then(resjson => {
//this.setState({mark: resjson})
console.log(resjson)
}).catch(err => console.log(err))
我尝试了默认的获取请求,但没有指定方法/获取,但这也不起作用。此外,我确认我正在获取正确的位置
解决方案
推荐阅读
- python - 使用 scapy 欺骗 dns 中的循环请求
- angular - 更改 Angular 项目中的配置文件后字体未加载
- url - 通过 URL 而不是 HTML 提交 Paypal 打开新标签
- sql - 输出子句 VS 触发器
- laravel-5.4 - 从 url laravel 5.4 中删除公共
- javascript - Botkit - 异步拉取用户数据
- graphql - graphql 查询或突变能否返回标量值
- ios - 密码字段的键盘仅在 iOS 12 上从 azerty 切换到 qwerty(有时)
- javascript - 未调用 Mongoose 无点样式函数
- javascript - JS为点击事件未接来电创建了带有参数的按钮