コード例 #1
0
 public function jsonAction()
 {
     $server = new Zend_Json_Server();
     $server->setClass('My_Server_Ventas');
     if ('GET' == $_SERVER['REQUEST_METHOD']) {
         $server->setEnvelope(Zend_Json_Server_Smd::ENV_JSONRPC_2);
         $smd = $server->getServiceMap();
         //header('Content-Type: application/json');
         echo $smd;
         return;
     }
     $server->handle();
 }
コード例 #2
0
$loader->registerNamespace('CnCNet_');
unset($loader);
$db = Zend_Db::factory('Pdo_Sqlite', array('dbname' => 'db/cncnet.db'));
Zend_Db_Table::setDefaultAdapter($db);
$db->query('PRAGMA foreign_keys = ON');
unset($db);
$type = isset($_GET['type']) ? $_GET['type'] : 'json';
if ($type == 'json' || $type == 'jsonp') {
    $server = new Zend_Json_Server();
    $server->setClass('CnCNet_Api');
    if ($type == 'jsonp') {
        $server->setRequest(new CnCNet_Json_Server_Request_Http_Jsonp());
        $server->setResponse(new CnCNet_Json_Server_Response_Http_Jsonp());
    } else {
        if ($_SERVER['REQUEST_METHOD'] == 'GET') {
            echo $server->setEnvelope(Zend_Json_Server_Smd::ENV_JSONRPC_2)->getServiceMap();
            return;
        }
    }
    $server->handle();
} else {
    if ($type == 'xml') {
        header('Content-type: text/xml');
        $server = new Zend_XmlRpc_Server();
        $server->setClass('CnCNet_Api');
        echo $server->handle();
    } else {
        if ($type == 'dumb') {
            header('Content-type: text/plain; charset=UTF-8');
            $server = new CnCNet_Api();
            if (isset($_GET['method']) && method_exists($server, $_GET['method'])) {
コード例 #3
0
ファイル: Bootstrap.php プロジェクト: kokx/Firal
 /**
  * Override of run method to provide JSON server interface
  *
  * @return void
  */
 public function run()
 {
     if (isset($_SERVER['HTTP_X_REQUESTED_WITH']) && $_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest') {
         // run Zend_Json_Server instead of the MVC stack
         $request = new Zend_Controller_Request_Http();
         $info = explode('/', trim($request->getPathInfo(), '/'));
         $module = $info[0];
         $service = $info[1];
         // attach the service to the JSON-RPC server
         $service = $this->_loadService($module, $service);
         $server = new Zend_Json_Server();
         $server->setClass($service);
         if ('GET' == $_SERVER['REQUEST_METHOD']) {
             // return the service map
             $server->setEnvelope(Zend_Json_Server_Smd::ENV_JSONRPC_2);
             $smd = $server->getServiceMap();
             header('Content-Type: application/json');
             echo $smd;
             return;
         }
         $server->handle();
     } else {
         parent::run();
     }
 }