PhantomJ如何通过RabbitMQ进行通信?

PhantomJ如何通过RabbitMQ进行通信?,rabbitmq,phantomjs,Rabbitmq,Phantomjs,我是拉比犬的新手。我使用PhantomJS并使用JavaScript来做一些事情。现在,我需要将一些结果发送到RabbitMQ,以便使用另一个脚本读取它们。我的意思是,我想让幻影与RabbitMQ交流。发送一些消息并从队列中读取一些消息。可能吗?是否存在幻影可以与RabbitMQ通信的方法 PhantomJS只是另一种浏览器。这正是这个计划的目的。它基于SockJS,它在浏览器和服务器之间提供web套接字连接。如果web套接字不可用,则存在跨浏览器回退。PhantomJS从版本2开始支持web套

我是拉比犬的新手。我使用PhantomJS并使用JavaScript来做一些事情。现在,我需要将一些结果发送到RabbitMQ,以便使用另一个脚本读取它们。我的意思是,我想让幻影与RabbitMQ交流。发送一些消息并从队列中读取一些消息。可能吗?是否存在幻影可以与RabbitMQ通信的方法

PhantomJS只是另一种浏览器。这正是这个计划的目的。它基于SockJS,它在浏览器和服务器之间提供web套接字连接。如果web套接字不可用,则存在跨浏览器回退。PhantomJS从版本2开始支持web套接字

如果没有在PhantomJS中
打开
页面,则需要使用
--local to remote url access=true
选项运行此操作。我假设sockjs-0.3.js和stomp.js在scripts目录中

page.injectJs('sockjs-0.3.js');
page.injectJs('stomp.js');
page.evaluate(函数(){
var ws=new SockJS('http://127.0.0.1:15674/stomp');
window.client=Stomp.over(ws);
...
});

这必须在页面上下文中运行(在
page.evaluate()的内部)。这就是为什么
client
是一个全局
window
属性,这样您就可以通过后续的
page.evaluate()
调用获取对客户端的引用。您可以使用
window.callPhantom()
和事件处理程序触发从页面上下文到外部的调用。

谢谢。如果我理解正确,我就无法将PhantomJS 1.x连接到RabbitMQ。对吗?而且,你的解释我也不清楚。有没有关于这方面的文档可以让我使用?我自己还没有尝试过,但SockJS文档说,如果WebSocket不可用,它将退回到其他技术。因此,它应该适用于PhantomJS 1.x。究竟什么是不清楚的?如何在浏览器中使用Web Stomp(这是我第一次提供),或者如何处理来自页面上下文的连接?谢谢。第二个。如何处理来自页面上下文的连接?我已经有了我的目标脚本。我需要彻底改变它吗?