0

在 Spring Framework for Java 中,405 Method Not Allowed如果请求中缺少一个或多个必需参数,则控制器会返回。在 PHP 中是否有一种聪明简单的方法来做同样的事情?

4

2 回答 2

2

是或否,取决于你所说的聪明和/或容易。但是(见下文)我猜你会说“不”。

405 Method Not Allowed是一个 HTTP 状态代码,默认情况下 PHP 根本不会返回这些(例如,如果您通过 apache 发送默认的 200 标头)。

标准 PHP 中没有“控制器”,因此您无需期待任何回报。您可以使用或构建一个框架,如果缺少参数,它可能会返回一些东西。

如果您要自己实现它,则返回一个像这样的标题。

header('HTTP/1.1 405 Method Not Allowed');
于 2013-02-06T15:24:47.677 回答
0

如果您要自制一个在验证控制器参数时触发的类似功能,大多数大型框架都提供此类功能。

function forward_not_allowed()
{
    header("Status: 405 Method Not Allowed");
    exit;
}

如果你想要一些更高级和自动化的东西,你可以注册你自己的错误处理程序来解析如果使用无效参数调用方法并在那里创建重定向时抛出的 php-waring/错误。http://phpmaster.com/error-handling-in-php/

于 2013-02-06T15:25:02.237 回答