我有前端文件夹文件反应组件和前端css库。
在不同的文件夹中,我有带有mysql连接的带有server.js路由的后端文件.
当我在屏幕上输入输入时,输入不会保存到mysql数据库中。
问题:
。
问:当我连接前端和后端时,我应该打开什么文件,以便前端与后端->都开始对话?
发布于 2020-07-31 20:17:14
问题1回答:你可以用多种方法来完成这个任务。我使用Serverjs完成了这一操作,并以以下方式做出了反应。
const express = require('express');
const bodyParser = require('body-parser');
const cors = require('cors');
const port = 80085;
const app = express();
const token = 'impossiblylongimportanttokenhere';
let nextId = 7;
您将需要导入CORS、Parser、Express以供路由使用。假设您有一个登录名,您将需要一个身份验证函数。请注意,这只是为了发展。
function authenticator(req, res, next) {
const { authorization } = req.headers;
if (authorization === token) {
next();
} else {
res.status(403).json({ error: 'User must be logged in to do that.' });
}
}
一旦您不再使用开发,您可能希望用更安全的东西来代替它。有了app作为我们的路由器快递有几个CORS方法让我们开始像started
这里有一个例子,如果我们有一个名为朋友的数组,如果我们想通过ID找到那个朋友。
app.get('/api/friends/:id', authenticator, (req, res) => {
const friend = friends.find(f => f.id == req.params.id);
if (friend) {
res.status(200).json(friend);
} else {
res.status(404).send({ msg: 'Friend not found' });
}
});
最棒的是,express有一个名为listen的方法,当我们在与server.js相同的文件位置上运行NPM时,该方法就会启动。确保指定系统尚未使用的端口
app.listen(port, () => {
console.log(`server listening on port ${port}`);
});
问题2:为了在我们这端连接到Server.js,您需要使用axios对上面的server.js中所做的任何路由进行GET/POST等调用,在示例中是
.post('/api/friends', this.state.addFriend)
最重要的是,您需要运行多个终端,以便同时运行后端和前端。先从后端开始。
https://stackoverflow.com/questions/63198055
复制相似问题