現在、Zend MVC アプリケーションからコントローラーを構築しています。これは、ページを設定するための json サービスとしてのみ使用されます。ユーザーがこのエンドポイントにアクセスするためにGETメソッドのみを使用するように制限したい(セキュリティ上の理由から)。
この投稿に従いました_forward() in Zend does not work? しかし、働くことができませんでした。
preDispatch を使用して get 以外のリクエストを検出し、同じコントローラーで errorAction に転送したいと考えています。私のコードは次のようになります。
public function preDispatch(){
$this->_helper->layout()->disableLayout();
$this->_helper->viewRenderer->setNoRender();
//Restrict this Controller access to Http GET method
if(!($this->getRequest()->isGet())){
return $this->_forward('error');
}
}
public function errorAction(){
$this->getResponse()->setHttpResponseCode(501);
echo "Requested Method is not Implemented";
}
投稿リクエストでページをテストすると、スローされます
PHP 致命的なエラー: 最大実行時間の 30 秒を超えました
私はそれで動作しました
$this->_redirect("service/error");
この状況を処理する唯一の/最善の方法であるかどうか疑問に思っています。
どんな助けでも本当に感謝しています。前もって感謝します。