Ich möchte nur GET-Anfragen an meinen Controller zulassen und habe VerbFilter angehängt. Die Dokumentation besagt, dass sie den HTTP-Statuscode 405 zurückgeben muss, wenn die Methode der Anfrage nicht erlaubt ist, aber ich habe stattdessen 500 Statuscode erhalten.Yii2 VerbFilter gibt 500 Statuscode statt 405 zurück
class MyController extends Controller {
...
public function behaviors(){
return [
'verb' => [
'class' => VerbFilter::className(),
'actions' => [ '*' => ['get'] ]
];
}
public function actions(){
return [ 'error' => [
'class' => 'yii\web\ErrorAction'
]];
}
...
}
Fehlermeldung
An Error occurred while handling another error:
exception 'yii\web\MethodNotAllowedHttpException' with message
'Method Not Allowed. This url can only handle the following request methods: GET.'
in /yii_project/vendor/yiisoft/yii2/filters/VerbFilter.php:105
Previous exception:
exception 'yii\web\MethodNotAllowedHttpException' with message
'Method Not Allowed. This url can only handle the following request methods: GET.'
in /yii_project/vendor/yiisoft/yii2/filters/VerbFilter.php:105
Wie Sie sehen können, ist previos Fehler Duplikat aktuellen Fehler. Ich habe keine Ahnung von einem Grund dafür.
500 ist Serverfehler, also würde ich vermuten, dass Sie einen Fehler haben. Funktionieren Anfragen mit GET erfolgreich? –
@ Jørgen Ja, GET arbeiten erfolgreich. Fehlermeldung informiert über Fehler während der Behandlung eines anderen Fehlers. Also, VerbFilter gibt zwei Fehler. Ich habe VerbFilter zweimal angefügt. Aber ich nicht. Wtf ... :( –
Protokoll für 500 Fehler zur Verfügung stellen –