IXR_Server::serve() –
You appear to be a bot. Output may be restricted
Description
Usage
IXR_Server::serve( $data );
Parameters
- $data
- ( mixed ) optional –
Returns
void
Source
File name: wordpress/wp-includes/IXR/class-IXR-server.php
Lines:
1 to 48 of 48
function serve($data = false) { if (!$data) { if (isset($_SERVER['REQUEST_METHOD']) && $_SERVER['REQUEST_METHOD'] !== 'POST') { if ( function_exists( 'status_header' ) ) { status_header( 405 ); // WP #20986 header( 'Allow: POST' ); } header('Content-Type: text/plain'); // merged from WP #9093 die('XML-RPC server accepts POST requests only.'); } $data = file_get_contents('php://input'); } $this->message = new IXR_Message($data); if (!$this->message->parse()) { $this->IXR_Server::error(-32700, 'parse error. not well formed'); } if ($this->message->messageType != 'methodCall') { $this->IXR_Server::error(-32600, 'server error. invalid xml-rpc. not conforming to spec. Request must be a methodCall'); } $result = $this->IXR_Server::call($this->message->methodName, $this->message->params); // Is the result an error? if (is_a($result, 'IXR_Error')) { $this->IXR_Server::error($result); } // Encode the result $r = new IXR_Value($result); $resultxml = $r->getXml(); // Create the XML $xml = <<<EOD <methodResponse> <params> <param> <value> $resultxml </value> </param> </params> </methodResponse> EOD; // Send it $this->IXR_Server::output($xml); }