gpt4 book ai didi

javascript - 来自客户端 express nodejs 的重复请求

转载 作者:搜寻专家 更新时间:2023-10-31 23:55:28 27 4
gpt4 key购买 nike

我的应用程序中有一个我无法解决的问题

首先是我的应用:

Node 0.8.14 express 3.1护照-本地 0.1

问题是当我在 passport session 中登录时,客户端请求该页面两次...

我发现因为我在 url 中放置了一个请求 var

这是我的路由器

exports.index=function(req,res)
{
console.log('success: '+req.url);
var sesion_usuario=validate(req.params.code_user);//if not valid return null
if(sesion_usuario){
res.render('logged',{title:'Hello'+sesion_usuario})

在我的浏览器中

http://localhost:8000/YOGE7419

这在我的应用程序中

app.get('/:code_user',routes.index);

这就是我在提示中收到的内容

success: /YOGE7419
success: /YOGE7419
DEBUG: validate error: maxlength not match

和这里的 url 转换

http://localhost:8000/YOGE7419#sthash.zp1bOY2d.dpbs

这是为什么呢???第一个和第二个请求之间发生了什么??发送

应用配置

app.configure(function()
{
app.use(express.favicon(__dirname + '/public/images/favicon.png'));
app.set('port', 8000 || process.env.PORT);
app.set('views', __dirname + '/views');
app.set('view engine', 'jade');
app.set('view options',{layout:false});
//app.use(express.logger('dev'));
app.use(express.bodyParser({uploadDir:'./public/uploads/'}));
app.use(express.cookieParser('nomatherwhatdoyoudobatman'));
app.use(express.session());
app.use(passport.initialize());
app.use(passport.session());
//app.use(express.methodOverride());
app.use(app.router);
app.use(express.static(path.join(__dirname, 'public')));
app.use(function(req, res, next){
res.render('404.jade',
{
title: "404 - Page Not Found",
showFullNav: false,
status: 404,
url: req.url
});
});
});

最佳答案

如果 express 重定向浏览器,那么如果重定向尚未完成,浏览器将发送重复请求(根据我的经验,它是在 5 秒后)。

通过为重定向请求添加超时,我能够避免重复请求:

app.get('/path2', function( req, res ) {
req.connection.setTimeout( 1000 * 60 * 10 ); // ten minutes
console.log('path2');
});

有关详细讨论,请阅读 GitHub Link .

关于javascript - 来自客户端 express nodejs 的重复请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16423148/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com