From 188431cd4a606801007e7abe8551dc7702a67bf4 Mon Sep 17 00:00:00 2001 From: Geoffrey Frogeye Date: Thu, 9 Apr 2015 23:56:45 +0200 Subject: [PATCH] Support for virtually any content Why haven't I figured out that my server supported this from the beginning? --- proxy.php | 35 +++-------------------------------- 1 file changed, 3 insertions(+), 32 deletions(-) diff --git a/proxy.php b/proxy.php index 4a7976d..04ca878 100755 --- a/proxy.php +++ b/proxy.php @@ -47,47 +47,18 @@ class Proxy { switch ($name) { case 'Host': case 'Connection': - case 'Content-Length': break; default: $reqHeds .= "$name: $content\r\n"; } } - - if (isset($reqsHedsC['Content-Type'])) { - switch ($reqsHedsC['Content-Type']) { // TODO Other content-types - case 'application/x-www-form-urlencoded': - $postData = ''; - foreach ($_POST as $key => $value) { - $postData .= $key . '=' . urlencode($value) . '&'; - } - $postData = rtrim($postData, '&'); - break; - - case 'application/json': - $postData = file_get_contents('php://input'); - break; - - case 'TODO': - $postData = stripslashes($_POST['payload']); - break; - - default: - $postData = "Unknown Content-Type"; - break; - - } - $reqHeds .= "Content-Length: ".strlen($postData)."\r\n"; - $reqHeds .= "Connection: Close\r\n"; - $reqHeds .= "\r\n" . $postData; - } else { - $reqHeds .= "Connection: Close\r\n\r\n"; - } + + $reqHeds .= "Connection: Close\r\n\r\n".file_get_contents('php://input'); $fp = fsockopen($serv, $port, $errno, $errstr, 30); if (!$fp) { // TODO ErrorCode, ErrorDocument - echo "Couldn't connect to server\n
$errstr ($errno)
\n"; + echo "Couldn't connect to server.\n
$errstr ($errno)
\n"; } else { // Sending request fwrite($fp, $reqHeds);