节点重定向到一个阵列的随机链接

问题描述 投票:0回答:1

我在节点中有一个脚本,我想自动重定向到我在一个数组中的randoms链接,页面是白色的,当我放入maths.random函数时不重定向

有我的代码:

const http = require('http');

let randURLs = [
    "aaaaa",
    "xxxxx",
    "bbbbb"
];
const server = http.createServer(function(req, res) {
    if (req.method === 'POST') {
       console.log('post method')
    }
    else {
        let randNumber = Math.floor(Math.random()*randURLs.length);
        res.writeHead(301,{Location: 'https://www.test.com/' + 
randURLs[randNumber]});
     }
    res.end();
});

server.listen(4000);
console.log("localhost:1337 ...");

我想重定向到https://www.test.com/randomValueInMyArray

谢谢,本杰明

node.js random req
1个回答
0
投票

我测试了你的代码,对我来说它完全正常。

要考虑的两件事:你做了

server.listen(4000);

但打印“localhost:1337”到控制台。有点混乱;-)

另一件事是,您发送的http状态为301 Moved Permanently。这会导致您的浏览器始终将您重定向到第一个请求的结果(即第一个随机值)。因为你说“永久”而你的浏览器不会期望另一个值,如果它是永久性的。

© www.soinside.com 2019 - 2024. All rights reserved.