当前位置: 首页>>代码示例>>PHP>>正文


PHP CHttpRequest::body方法代码示例

本文整理汇总了PHP中CHttpRequest::body方法的典型用法代码示例。如果您正苦于以下问题:PHP CHttpRequest::body方法的具体用法?PHP CHttpRequest::body怎么用?PHP CHttpRequest::body使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在CHttpRequest的用法示例。


在下文中一共展示了CHttpRequest::body方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: dirname

**
** This program is distributed in the hope that it will be useful,
** but WITHOUT ANY WARRANTY; without even the implied warranty of
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
** GNU General Public License for more details.
**
** You should have received a copy of the GNU General Public License
** along with this program; if not, write to the Free Software
** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
**/
require_once dirname(__FILE__) . '/include/config.inc.php';
$requestType = getRequest('type', PAGE_TYPE_JSON);
if ($requestType == PAGE_TYPE_JSON) {
    $http_request = new CHttpRequest();
    $json = new CJson();
    $data = $json->decode($http_request->body(), true);
} else {
    $data = $_REQUEST;
}
$page['title'] = 'RPC';
$page['file'] = 'jsrpc.php';
$page['hist_arg'] = array();
$page['type'] = detect_page_type($requestType);
require_once dirname(__FILE__) . '/include/page_header.php';
if (!is_array($data) || !isset($data['method']) || $requestType == PAGE_TYPE_JSON && (!isset($data['params']) || !is_array($data['params']))) {
    fatal_error('Wrong RPC call to JS RPC!');
}
$result = array();
switch ($data['method']) {
    case 'host.get':
        $result = API::Host()->get(array('startSearch' => true, 'search' => $data['params']['search'], 'output' => array('hostid', 'host', 'name'), 'sortfield' => 'name', 'limit' => 15));
开发者ID:omidmt,项目名称:zabbix-greenplum,代码行数:31,代码来源:jsrpc.php

示例2: dirname

header('Access-Control-Max-Age: 1000');
if ($_SERVER['REQUEST_METHOD'] === 'OPTIONS') {
    return;
}
require_once dirname(__FILE__) . '/include/func.inc.php';
require_once dirname(__FILE__) . '/include/classes/core/CHttpRequest.php';
$allowed_content = array('application/json-rpc' => 'json-rpc', 'application/json' => 'json-rpc', 'application/jsonrequest' => 'json-rpc');
$http_request = new CHttpRequest();
$content_type = $http_request->header('Content-Type');
$content_type = explode(';', $content_type);
$content_type = $content_type[0];
if (!isset($allowed_content[$content_type])) {
    header('HTTP/1.0 412 Precondition Failed');
    return;
}
require_once dirname(__FILE__) . '/include/classes/core/Z.php';
header('Content-Type: application/json');
$data = $http_request->body();
try {
    Z::getInstance()->run(ZBase::EXEC_MODE_API);
    $apiClient = API::getWrapper()->getClient();
    // unset wrappers so that calls between methods would be made directly to the services
    API::setWrapper();
    $jsonRpc = new CJsonRpc($apiClient, $data);
    echo $jsonRpc->execute();
} catch (Exception $e) {
    // decode input json request to get request's id
    $jsonData = CJs::decodeJson($data);
    $response = array('jsonrpc' => '2.0', 'error' => array('code' => 1, 'message' => $e->getMessage()), 'id' => isset($jsonData['id']) ? $jsonData['id'] : null);
    echo CJs::encodeJson($response);
}
开发者ID:TonywalkerCN,项目名称:Zabbix,代码行数:31,代码来源:api_jsonrpc.php


注:本文中的CHttpRequest::body方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。