node.js - 如何在反应前端设置 cors 策略?
问题描述
我的注册组件如下所示:
import fetch from "isomorphic-fetch";
import { API } from "../config";
import cookie from "js-cookie";
export const signup = (user) => {
return fetch(`${API}/signup`, {
method: "POST",
headers: {
Accept: "application/json",
"Content-Type": "application/json",
},
body: JSON.stringify(user),
})
.then((response) => {
return response.json();
})
.catch((err) => console.log(err));
};
我的注册控制器如下所示:
const User = require("../models/users.model");
const shortId = require("shortid");
const jwt = require("jsonwebtoken");
const expressJwt = require("express-jwt");
exports.signupController = (req, res) => {
// check if user is already registered
User.findOne({ email: req.body.email }).exec((err, user) => {
if (user) {
return res.status(403).json({ error: "User already exists" });
}
const { name, email, password, confirmPassword } = req.body;
let username = shortId.generate();
let profile = `${process.env.CLIENT_URL}/profile/${username}`;
let newUser = new User({ name, email, password, profile, username });
newUser.save((err, success) => {
if (err) {
return res
.status(500)
.json({ error: "We could not signup you, sorry!" });
}
res
.status(200)
.json({ message: "Signup Successful. You can now sign in." });
});
});
};
在后端 server.js 中,我已经将 cors 用作:
const cors = require("cors");
app.use(cors());
两天前一切正常..但现在出现错误。我的后端或前端是否有任何问题。请帮忙。
解决方案
您可以从 URL http://localhost:3000 而不是http://127.0.0.1:3000访问您的前端,这将解决问题。
注意:只有在为某个域启用 CORS 时,才能从后端修复它
推荐阅读
- javascript - Javascript 优化 - 从列表中查找 id 并将其映射到 Tree
- java - 创建名为“org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter”的bean时出错
- javascript - 如何重置 angular2 表单中定义的下拉列表的值?
- javascript - 使用 Canvas JS 在页面中渲染多个图表
- flutter - 如果用户尚未登录,如何显示登录页面,如果用户已登录,如何显示帐户页面
- c - lseek() 的偏移量和大块设备
- r - 到达时间间隔中绝对时间的 R 向量
- python - 列表匹配中大小写不同的计数问题
- windows - rtsp 到 youtube 流在 Windows 中不起作用
- c# - 删除密码保护方法后使用 System.Data.SQLite 在 C# 中加密和打开加密的 SQLite 数据库