add platform FG
parent
243f08f0fa
commit
d2cdce4277
46
index.php
46
index.php
|
@ -8,8 +8,9 @@ include 'common.php';
|
|||
if (isset($_SERVER['USER'])&&$_SERVER['USER']==='qcloud') {
|
||||
include 'platform/TencentSCF.php';
|
||||
} elseif (isset($_SERVER['FC_SERVER_PATH'])&&$_SERVER['FC_SERVER_PATH']==='/var/fc/runtime/php7.2') {
|
||||
//echo '<pre>'. json_encode($_SERVER, JSON_PRETTY_PRINT).'</pre>';
|
||||
include 'platform/AliyunFC.php';
|
||||
} elseif ($_SERVER['_APP_SHARE_DIR']=='/var/share/CFF/processrouter') {
|
||||
include 'platform/HuaweiFG.php';
|
||||
} elseif (isset($_SERVER['HEROKU_APP_DIR'])&&$_SERVER['HEROKU_APP_DIR']==='/app') {
|
||||
include 'platform/Heroku.php';
|
||||
$path = getpath();
|
||||
|
@ -56,19 +57,22 @@ function main_handler($event, $context)
|
|||
return main($path);
|
||||
}
|
||||
|
||||
// Aliyun FC
|
||||
function handler($request, $context)
|
||||
// Aliyun FC & Huawei FG
|
||||
function handler($event, $context)
|
||||
{
|
||||
if (isset($_SERVER['FC_SERVER_PATH'])&&$_SERVER['FC_SERVER_PATH']==='/var/fc/runtime/php7.2') {
|
||||
// Aliyun FC
|
||||
set_error_handler("myErrorHandler");
|
||||
$event = array(
|
||||
'method' => $request->getMethod(),
|
||||
'clientIP' => $request->getAttribute("clientIP"),
|
||||
'requestURI' => $request->getAttribute("requestURI"),
|
||||
'path' => spurlencode($request->getAttribute("path"), '/'),
|
||||
'queryString' => $request->getQueryParams(),
|
||||
'headers' => $request->getHeaders(),
|
||||
'body' => $request->getBody()->getContents(),
|
||||
$tmp = array(
|
||||
'method' => $event->getMethod(),
|
||||
'clientIP' => $event->getAttribute("clientIP"),
|
||||
'eventURI' => $event->getAttribute("eventURI"),
|
||||
'path' => spurlencode($event->getAttribute("path"), '/'),
|
||||
'queryString' => $event->getQueryParams(),
|
||||
'headers' => $event->getHeaders(),
|
||||
'body' => $event->getBody()->getContents(),
|
||||
);
|
||||
$event = $tmp;
|
||||
$context = json_decode(json_encode($context), true);
|
||||
printInput($event, $context);
|
||||
unset($_POST);
|
||||
|
@ -81,6 +85,25 @@ function handler($request, $context)
|
|||
$re = main($path);
|
||||
|
||||
return new RingCentral\Psr7\Response($re['statusCode'], $re['headers'], $re['body']);
|
||||
|
||||
} elseif ($_SERVER['_APP_SHARE_DIR']=='/var/share/CFF/processrouter') {
|
||||
// Huawei FG
|
||||
global $contextUserData;
|
||||
$contextUserData = $context;
|
||||
$event = json_decode(json_encode($event), true);
|
||||
if ($event['isBase64Encoded']) $event['body'] = base64_decode($event['body']);
|
||||
|
||||
printInput($event, $context);
|
||||
unset($_POST);
|
||||
unset($_GET);
|
||||
unset($_COOKIE);
|
||||
unset($_SERVER);
|
||||
GetGlobalVariable($event);
|
||||
//echo '<pre>'. json_encode($_COOKIE, JSON_PRETTY_PRINT).'</pre>';
|
||||
$path = GetPathSetting($event, $context);
|
||||
|
||||
return main($path);
|
||||
}
|
||||
}
|
||||
|
||||
// used by Aliyun FC
|
||||
|
@ -105,6 +128,5 @@ function myErrorHandler($errno, $errstr, $errfile, $errline) {
|
|||
break;
|
||||
}
|
||||
|
||||
/* Don't execute PHP internal error handler */
|
||||
return true;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue