我在PHP中创建了一个简单的Web服务REST,如下所示
if (($_SERVER["REQUEST_METHOD"]=="POST")&&($_SERVER["PATH_INFO"]=="/myService")){
$payload=json_decode(file_get_contents('php://input'),1);
$class= new ClassA();
$class->runFunction($payload["myParameter"]);
} else {
header("HTTP/1.1 400 Bad Request");
echo("Error");
}
这是ClassA中的函数
function runFunction($myParameter)
{
if (empty($myParameter)){
header("HTTP/1.1 400 Bad Request");
echo("Error");
}
else
{
ob_start();
echo("Ok service invoked");
$size=ob_get_length();
header("Content-Length: {$size}");
ob_end_flush(); *//I use this to continue processing php after response*
ob_flush();
flush();
**HERE THERE IS A switch($myParameter)
WITH DIFFERENT FUNCTION**
}
}
所以我的问题是如果在点X之后执行某些操作期间再次调用Web服务会发生什么? 脚本可以处理新请求而不停止第一个吗?
我有这个疑问,因为我在测试后检查了日志文件,当第二次使用新参数调用/ myService时,脚本似乎停止了对第一个请求的处理。
如果有这个问题,我该如何修改我的脚本?
非常感谢