Sah*_*ata 7 javascript express
我在尝试使用 ExpressJS 重定向时遇到问题,我制作了一个登录系统来获取发布请求,如果用户存在,则页面应该重定向,但 Cors 却阻止了它。
这是请求:
router.post('/login', async (req, res) => {
try{
let usersData = await getFiles(__dirname + '/users.json');
let parsedUsers = JSON.parse(usersData);
let userChecker;
for(let i = 0; i < parsedUsers.length; i++){
if(parsedUsers[i].userName === req.body.userName){
userChecker = 1;
break;
}
}
if(!userChecker){
console.log(`${req.body.userName} Not exist`);}
else {
console.log(`${req.body.userName} Approved`);
res.redirect('/')
}
}
catch (err) {
if(err) throw err
};
})
Run Code Online (Sandbox Code Playgroud)
这是它在控制台发送的错误:
Access to fetch at 'http://localhost:3001/users/login' (redirected from 'http://localhost:4000/users/login') from origin 'null' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. If an opaque response serves your needs, set the request's mode to 'no-cors' to fetch the resource with CORS disabled.
Run Code Online (Sandbox Code Playgroud)
谁能告诉我那个cors有什么问题吗?
这是因为您的项目中尚未允许 CORS(跨源资源共享)。您可以为此安装cors包。
npm install cors
Run Code Online (Sandbox Code Playgroud)
然后这样做,
app.use(cors()) // It will enable all cors requests
Run Code Online (Sandbox Code Playgroud)
就是这样。你现在可以走了。这是处理cors的最简单的方法。
| 归档时间: |
|
| 查看次数: |
4832 次 |
| 最近记录: |