我在node中编写此代码,但当我点击地址时,math.random()在浏览器中不工作。它显示错误,但在cmd中工作正常,即comsole.log(x)。
错误是在此处输入图像描述
var express = require('express');
var app = express();
app.get("/",function(req,res){
console.log("Someone Requested Us!");
res.send("You've Reached The Home Page"); //res.write("Hello World");
res.end();
});
app.get("/random_num",function(req,res){
const x = Math.floor(Math.random() * 10) + 1 ;
console.log(x);
res.send(x);
//res.end();
});
app.listen(3000, function(){
console.log("Server Running On 3000");
});
2条答案
按热度按时间njthzxwz1#
res.send([body])不希望发送数字。
body参数可以是缓冲区对象、字符串、对象、布尔值或数组。
查看您的错误,看起来前面的数字是允许的,并且被隐式用作
HTTP Status Codes
(例如:200404201)。现在,express认为您在使用发送状态代码时仍然使用版本中的旧语法.send()
这是正常的。现在它被弃用了。无论如何,8不是一个有效的代码。你可以做:
您的错误还让您知道,如果要发送状态,您可以简单地使用res.sendstatus(200)等。不过,你可能不希望这样。
ftf50wuq2#
问题不在于随机性,而在于您以错误的方式返回响应。