用户登录后无法让 Express 重定向到主页

没什么特别的

我正在尝试设置用户登录部分。user_router 正在发送一个 JSON 响应就好了,但是我无法让 Express 将新的 html 页面发送回客户端。提供的第一个页面是 login.html,其中包含用于登录验证的提交表单。目标是在登录验证时与实际 app.html 页面一起发送 200 状态消息。状态消息正在运行,但是 Express sendFile 没有将浏览器重定向到 app.html 页面。我在这里做错了什么?

app.js 文件首先被加载。它具有以下配置:

const user_router = require( './router/user_router' );
const path = require( 'path' );
const public_directory = path.join( __dirname, '../public' );
const express = require( 'express' );
const app = express();
app.use(express.static( public_directory , {index: 'login.html'}));
app.use( user_router );
app.use( express.json() );

应在其中进行验证和重定向的 user_router.js 文件。

const auth = require( '../middlewear/auth' );
const express = require( 'express' );
const User = require( '../model/user_model' );
const router = new express.Router();
router.use( express.json() );

router.post( '/users/login' , async ( req , res ) => {
        
    try {       
        const user = await User.find_by_credentials( req.body.email , req.body.password );      
        const token = await user.create_token();
        const path = require( 'path' );     
        const app = path.join( __dirname, '../../public/app.html' );        
        res.sendFile( app );
        res.send( { user , token } );
    }
    catch( err ){
        res.status( 400 ).send();
    }
});
昆汀

如果要发出重定向响应,则需要使用该redirect方法

sendFile方法发送一个文件……用于客户端请求的 URL。它非常不会重定向它们。

send方法还发送一个不是重定向的响应。


更重要的是,一个请求只能有一个响应(好吧,除非你使用HTTP/2的新特性

redirect, sendFile, 或send: 选择一个redirect如果你想重定向,应该是!)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如果用户已经登录,则重定向到主页

登录和签出用户重定向到主页如何在SAP Hybris中重定向到购物车页面

用户使用Apache Shiro和JSP重新登录时如何重定向到主页

成功登录后,我无法重定向到主页

Symfony:注销后如何重定向到主页

如果用户不登录就直接进入主页,则重定向到登录页面

移动Wordpress网站并在登录时重定向到主页

提交表单提示后重定向到主页

在nuxt中注销后如何重定向到主页?

当用户登录Angular时如何重定向到其他主页?

动画完成后,TextField重定向到主页

注册后重定向到主页

登录后尝试将用户重定向到主页

登录后重定向到受保护的页面(passport-local-express-nodejs)

无法从登录页面重定向到主页

Joomla登录页面(如果已经登录用户)重定向到主页

单击提交按钮后如何重定向到主页?

将用户重定向到主页或禁用登录按钮(如果未登录)

护照认证后Express重定向到错误视图

如果用户已经登录,如何将用户重定向到其主页?

退出反应后如何重定向到主页(在jsx中)

express js 无法重定向用户

登录 Django 后无法重定向到主页

登录时将用户重定向到主页

Django ajax表单 - 表单验证后重定向到主页

登录后 /login 应重定向到主页

登录后如何重定向到主页:ReactJS?

我应该在注册后将用户重定向到登录页面还是主页?

如何在 Django 中将已通过身份验证的用户从登录页面重定向到主页?