1

我使用 PhantomJS 开发一个将在服务器端执行的脚本。

总之,我的脚本会为我生成一个页面截图。我使用 API 端 PhantomJS 另一个 API,它将为我提供有关上面生成的图像的信息。

要启动 PhantomJS 我的屏幕,我必须在服务器的控制台中输入:phantomjs MyScript.js

该脚本为我生成一个图像以使用我必须在控制台中输入的第二个 API:nameofmyapi image.png

是否有可能在我的脚本 PhantomJS 中像这样调用我的第二个 API?

page.open(function(){

    page.render();

    WRITE IN CONSOLE -> nameofmyapi image.png

}

谢谢 !

4

1 回答 1

1

也许为时已晚,但这种情况有两种可能性:

1. 使用新的 child_process 模块(1.9 新增)

你可以在这里找到一个例子。

var execFile = require("child_process").execFile

execFile("nameofmyapi ", ["image.png"], null, function (err, stdout, stderr) {
  console.log("execFileSTDOUT:", JSON.stringify(stdout))
  console.log("execFileSTDERR:", JSON.stringify(stderr))
})

2. 在 phantomJS 中注入你的 API

PhantomJS 支持脚本注入到 Phantom 外层空间。如果您的代码是纯 JS API,您可以轻松使用它而无需流程执行成本。请参阅此处
的 文档。

于 2013-05-10T07:20:05.153 回答