有一个问题让我发疯。第三天,我为它而战。有两个文件,app.js和api.js
// app.js
const app = require('express')();
const proxy = require('express-http-proxy');
app.use('/api', proxy('http://localhost:1234'));
app.use((err, req, res, next) => {
console.log(err.message);
});
// api.js
const app = require('express')();
const mongoose = require('mongoose');
mongoose.connect('mongodb://localhost:27017/bookshop');
var Users = require('./models/users');
在文件的下方,通常有路线处理......
在api.js结束时,表示正在端口1234上侦听此脚本:
app.listen(1234, err => {
if (err) console.log(err);
console.log('worked on http://localhost:1234');
});
在api.js内部应该有对路由和数据库的访问权限,但是它没有到达联系点,因为当我访问该站点时,我得到以下内容:
"connect ECONNREFUSED 127.0.0.1:1234"
此消息从app.js返回此中间件:
app.use((err, req, res, next) => {
console.log(err.message);
});
在"脚本"中的package.json中我表示将启动服务器app.js(3000端口)和服务器api.js(1234端口),但是当更新站点上的页面时,会发生地址localhost:3000 / api / users,但不是localhost:1234 / api / user,应该如何。
帮助克服这一不幸!根本没有任何力量,我搜遍整个互联网寻找问题的解决方案,但问题的解决方案还没有找到......
P.S。在工作计算机上这个代码工作正常,但在家里断然拒绝。在工作x32 windows 8.1,在家x64 Windows 8.1,如果这很重要。
netstat -a | findstr LISTEN
返回:https://ibb.co/hyrxe5(链接到屏幕截图)。
我还想补充一点,如果我单独运行脚本,即在一个终端呼叫"节点app.js"在第二个节点api.js"中,一切正常
有什么问题? (对不起我丑陋的英语)