即使设置和定义了路由,我的快速路由器也会出现 404 错误
Getting a 404 error on my express router even though the route is setup and defined
我已经为我的应用程序构建了一个服务器来与第三方 API 进行交互,并且能够在浏览器中从我的应用程序访问该数据(绕过 cors)。
我正在使用 express router 为我的应用可以连接到的服务器创建路由并获取相关数据。
然而,对于我创建的路由,我从客户端应用程序收到 404 错误,在服务器 url 上收到 cannot/GET 错误。我正在关注这些 docs
代码如下:server.js
const express = require('express');
const cookieParser = require('cookie-parser');
const passport = require('passport');
const cors = require('cors');
const axios = require('axios');
const mavenlink = require('./routes/router');
const app = express();
const corsOptions = {
origin: '*',
credentials: true,
optionSuccessStatus: 200,
};
app.use(express.json());
app.use(cors(corsOptions));
app.use(cookieParser());
app.use(express.urlencoded({ extended: true }));
app.use(passport.initialize());
const port = process.env.PORT || 5000;
//Server application
app.get('/', (req, res) => {
res.json("Hello World")
})
app.use('/mavenlink', mavenlink);
app.listen(port, () => console.log(`Listening on port ${port}`));
routes/router.js
const express = require('express');
const router = express.Router();
router.get('/mavenlink', (req, res) => {
res.send('Mavenlink connector');
})
module.exports = router;
谁能看出我哪里出错了?
你的 mavenlink 路由在 GET http://localhost:5000/mavenlink/mavenlink. if you want the moute yo be at http://localhost:5000/mavenlink/ 然后在你的路由器文件中写
router.get('/', (req, res) => {
res.send('Mavenlink connector');
})
我已经为我的应用程序构建了一个服务器来与第三方 API 进行交互,并且能够在浏览器中从我的应用程序访问该数据(绕过 cors)。
我正在使用 express router 为我的应用可以连接到的服务器创建路由并获取相关数据。
然而,对于我创建的路由,我从客户端应用程序收到 404 错误,在服务器 url 上收到 cannot/GET 错误。我正在关注这些 docs
代码如下:server.js
const express = require('express');
const cookieParser = require('cookie-parser');
const passport = require('passport');
const cors = require('cors');
const axios = require('axios');
const mavenlink = require('./routes/router');
const app = express();
const corsOptions = {
origin: '*',
credentials: true,
optionSuccessStatus: 200,
};
app.use(express.json());
app.use(cors(corsOptions));
app.use(cookieParser());
app.use(express.urlencoded({ extended: true }));
app.use(passport.initialize());
const port = process.env.PORT || 5000;
//Server application
app.get('/', (req, res) => {
res.json("Hello World")
})
app.use('/mavenlink', mavenlink);
app.listen(port, () => console.log(`Listening on port ${port}`));
routes/router.js
const express = require('express');
const router = express.Router();
router.get('/mavenlink', (req, res) => {
res.send('Mavenlink connector');
})
module.exports = router;
谁能看出我哪里出错了?
你的 mavenlink 路由在 GET http://localhost:5000/mavenlink/mavenlink. if you want the moute yo be at http://localhost:5000/mavenlink/ 然后在你的路由器文件中写
router.get('/', (req, res) => {
res.send('Mavenlink connector');
})