Pusher客户端从命令行订阅并运行

时间:2015-04-28 21:35:32

标签: javascript php node.js pusher

我在php文件中集成了一些脚本。 它正在读取Pusher频道,并在列出的频道上有新事件时执行多项操作。

如果我在浏览器上运行:

  

的http:/localhost/pusher.php

让它打开推送器连接继续读取,但是如果我关闭它或在命令行上运行:

  

php pusher.php

脚本打开并在不到一秒的时间内结束连接而不读取将来的条目。

问题:运行(推送)js并保持打开并在命令行下读取的简单方法是什么?

import QtQuick 2.4
import QtQuick.Controls 1.3

ApplicationWindow {
    width: 300
    height: 300
    visible: true

    Rectangle {
        id: item
        border.width: 2
        x: 100
        y: 100
        width: 100
        height: 100
        state: "BASE"

        states: [
            State {
            name: "BASE"
            PropertyChanges { target: mouseArea; drag.target: undefined}
            PropertyChanges { target: item; color: "steelblue"}
        },
            State {
            name: "DRAGGABLE"
            PropertyChanges { target: mouseArea; drag.target: item}
            PropertyChanges { target: item; color: "darkblue"}
        }
        ]


        MouseArea {
            id: mouseArea
            anchors.fill: parent
            drag{
                // target:  NOT SET HERE
                minimumX: 0
                minimumY: 0
                maximumX: parent.parent.width - parent.width
                maximumY: parent.parent.height - parent.height
                smoothed: true
            }

            onPressAndHold: {
                item.state = "DRAGGABLE"
                mouse.accepted = false      // mouse event is USED but NOT CONSUMED...
            }

            onReleased: {
                item.state = "BASE"         // mouse event acceptation occurs here!
            }
        }
    }
}

1 个答案:

答案 0 :(得分:1)

JavaScript几乎是一种客户端语言(例外情况是Rhino,nodeJS等),您尝试的东西取决于Web浏览器提供的环境,或者更具体地说是连接到浏览器的虚拟机解释JS。您可能听说过Chrome使用的V8。

当您通过命令行运行脚本时,它只是呈现JS。什么都没有实际解析它。

你需要查看像cURL这样的PHP HTTP客户端(或者这些天看看Guzzle)。

至于长期破坏服务器端进程......这些任务通常由人们称之为daemon的人运行。也许请阅读本文以开始讨论该主题:Run php script as daemon process了解Google的相关内容应该可以找到有关该主题的内容。