在控制台中发出 http 请求时,PhantomJs 没有 return 任何状态

PhantomJs does not return any status when making an http request in console

我下载了 PhantomJS,启动了 exe 并在控制台输入

var page = require('webpage').create();
page.open('http://net.tutsplus.com', function(s){console.log(s);})

我没有看到控制台返回状态 "success",也没有错误。为什么?

我尝试使用 hello.js 它打印 "success" 但它不在交互模式下,这正常吗?

不要使用交互模式打开页面。某些东西阻止了 PhantomJS 打开页面,所以永远不会调用回调。如果稍等片刻并尝试访问 page.content,它仍会显示 about:blank 内容。 This is because REPL mode is broken.


上一个答案 如果这被用作脚本而不是交互模式:

我认为这是冲洗问题。添加第二个 console.log() 以查看是否出现第一个。

此外,关闭脚本总是一个好主意,此时输出 刷新:

page.open('http://net.tutsplus.com', function(s){
    console.log(s);
    phantom.exit();
});

我可以在 Raspbian 上用 PhantomJS 2.0.1-dev 重现这个问题。所有其他调用都没有问题了。