PHP监听器脚本,可以读取传入的$_REQUEST或$_POST变量


PHP listener script that can read incoming $_REQUEST or $_POST variables

我正在尝试编写一个PHP脚本,侦听由web应用程序作为双向通信的一部分发送的传入$_REQUEST或$_POST变量。

HTTP GET调用将以类似于此的格式对web应用程序进行。

WEBAPP将然后发送一个POST响应到我的监听器脚本(http://TRAVISNG.com/listener.php),所以我想知道如果我的php脚本可以解析它没有我执行php脚本手动?

请注意,我不是指编写一个监听套接字网络请求的脚本。

基本上,我想解析web应用程序发送的POST数据,并将其写入日志文件。因此,每次运行侦听器脚本时,它都会读取日志文件并打印出发送到侦听器脚本的所有POST响应。

下面是我写的一些代码:

<?php
    // Read incoming POST request
    if (!empty($_POST)){
        $params = join(" ", $_POST);
        //print_r($params);
        echo "|$params|";
    }
    // Print params & timestamp to file called listenerLog.txt
    $logFile = "http://travisng.com/listenerLog.txt";
    $fileHandle = fopen($logFile, 'a') or die("Unable to open the listenerLog.txt.");
    fwrite($fileHandle, $params);
    fclose($fileHandle);
    $output = file_get_contents($logFile);
    // Print listenerLog.txt
    //echo $output;
?>

欢呼,特拉维斯

为了克服这个问题,我决定创建一个CGI侦听器脚本并从那里处理REQUEST参数。每当GET/POST请求通过时,都会调用CGI脚本,并将请求写入日志文件。

根据您的示例调用/url,它们将在$_GET全局

所以尝试:

// Read incoming POST request
if (!empty($_GET)){
    $params = join(" ", $_GET);
    //print_r($params);
    echo "|$params|";
}

您可以使用$_REQUEST -这将包含$_GET$_POST以及(取决于版本或php.ini配置$_COOKIE)。