如何编写Zend Framework控制器插件,对所有传入请求执行HTTP Basic身份验证(或摘要)?如果未提供身份验证详细信息(通过Authorization
标头),或身份验证失败,我想返回401状态代码(而不是重定向到/login
或类似)。 (该应用程序是一个Web服务;它永远不会返回text/html
。)
(可能更简单地重新说明这个问题是:如何从控制器插件返回用户定义的状态代码,并禁止所有进一步处理?)
答案 0 :(得分:2)
我将从Zend_Auth组件开始,然后选择Http adapter或digest adapter,我认为您可能希望构建插件以评估{{3}处的请求}。
然后,您可以将错误响应放在默认控制器中,也可以构建/更改错误控制器,以便以您想要的方式返回http响应。
祝你好运