2012-01-26 9 views
0

Zend's JSON-RPC server은 세션을 좋아하지 않는 것 같아서 Zend_Session::getId()을 내 RPC 메서드에 전달하고 심지어 예상대로 Zend_Session::setId($session_id)으로 다시 활성화하여 세션을 첨부 할 수 없습니다.Zend_Auth를 Zend_Json_Server와 함께 사용하려면 어떻게해야합니까?

<?php 

$server = new Zend_Json_Server(); 
$server->setClass('MyRPC'); 
?> 
<script> 
$(document).ready(function() { 
    myrpc = jQuery.Zend.jsonrpc({ 
     url : <?=json_encode($this->baseUrl('/ajax'))?> 
     , smd : <?=$server->getServiceMap()?> 
     , async : true 
    }); 
    myrpc.getIdentity(<?=json_encode(Zend_Session::getId())?>, { 
     success : function(data) { 
      alert(data.user_id); 
     } 
    }); 
}); 
// see: http://www.tanabi.com/projects/jsonrpc 

</script> 

을 내 RPC 클래스 :

이 작동하지 않습니다 무엇을 설명하기 위해이 unimplemented처럼

<?php 

class MyRPC { 

    /** 
    * @param string 
    * @return array 
    */ 
    public function getIdentity($session_id) { 
     \Zend_Session::setId($session_id); 
     \Zend_Session::start(); 
     // returns NULL 
     return \Zend_Auth::getInstance()->getIdentity(); 
    } 

} 

답변

1

것 같습니다.

관련 문제