我即将开始开发一个允许用户登录服务并执行某些任务的前端。所有任务都是通过第三方的API执行的。
我正在使用PHP& Zend Framework。
我的问题:如果每个API调用都要求在标头中传递登录信息,那么如何保留登录凭据?
首先通过/ login控制器对用户进行身份验证,然后对其会话进行身份验证。
答案 0 :(得分:1)
我有简单的建议
您可以编写自定义Zend_auth_adapter
,我希望将其设为单一类,以便通过API验证您的登录数据
并将结果对象保存在会话对象
class My_Auth_adapther implements Zend_Auth_Adapter_Interface {
public static function getinstance($username , $password ){
return $this->authenticate($username , $password );
}
private function authenticate($username , $password ){
// make sure to check if the session has been already created in order to save one api request
// do your api call (login request ) her
// return false if its not valid
// or return stdobject that contain ($username , $password ) , for any post usage
}
}
如果该对象不存在(换句话说==未登录),则不允许进一步调用api