我有以下代码返回200,但是Node REPL上的句柄没有返回
require('https').get('https://www.google.com/', (resp)=>{console.log(resp.statusCode)}).end();
它显示
200
但是然后它在等待,直到我按Enter才返回句柄。这是否意味着我错过了添加指令的步骤?
答案 0 :(得分:0)
我在这里找到了答案。如果脚本用作代理模式,则连接保持活动状态。在这里发布了类似的问题
node.js - after get request, script does not return to console
当我尝试使用agent:false
-并同时提供host, port, path
信息时-可以正常工作。
答案 1 :(得分:0)
工作代码听起来不错,但是REPL(和回调)正在和您玩耍...
它实际上确实返回了“句柄”……看起来像是 ,就像不在REPL中一样。
“ console.log(param)”使用返回线在stdout(控制台)处返回字符串参数(在本例中为200)。这样就给人一种错觉,那就是您在命令行之间……不是……您可以键入下一个命令,而不要按“ ENTER”,这样就可以了。
为了更好地演示,请尝试使用单独的行运行代码,并尝试在“句柄返回之前”键入命令。
const https = require('https');
var req = https.get('https://www.google.com/', (resp)=>{console.log(resp.statusCode)});
req.end();