0

如何编写一个 Zend Framework 控制器插件来针对所有传入请求执行 HTTP 基本身份验证(或摘要)?如果没有提供身份验证详细信息(通过Authorization标头),或者身份验证失败,我想返回 401 状态代码(而不是重定向到/login或类似的)。(该应用程序是一个 Web 服务;它永远不会返回text/html。)

(这个问题的一个可能更简单的重新陈述是:你如何从控制器插件返回用户定义的状态代码,并禁止所有进一步的处理?)

4

1 回答 1

2

我将从Zend_Auth组件开始,然后选择Http 适配器摘要适配器,我认为您可能希望构建插件来评估routeStartup()处的请求。

然后,您可以将错误响应放在您的默认控制器中,或者您可以构建/更改错误控制器以返回您想要的任何风格的 http 响应。

祝你好运

于 2012-09-11T02:56:05.920 回答