간단한 RESTful 서비스를 Slim
으로 설정했습니다. 내가 예상치 못한 요청에게 405 메서드 허용되지 HTTP 상태 코드와 Slim
답변을 얻을 경우Slim : 잘못된 경로를 잡는 방법?
...
$app->get('/persons/get', function() { getPersons(); });
$app->get('/persons/get/:id', function($id) { getPerson($id); });
$app->put('/persons/setprop/:id/:prop', function($id) { setPersonProp($id); });
$app->options('/.+', function() { options(); });
$app->run();
:
이 내 라우팅의 발췌 한 것입니다.
예기치 않은 요청을 받고 응답을 사용자 정의하려면 어떻게해야합니까?
UPDATE :
@Martin Turjak 제안, 나는 오류()와 NOTFOUND() 메소드를 추가했다, 그래서 이것은 내 현재 코드입니다 : 어떤 이유
...
$app->get('/persons/get', function() { getPersons(); });
$app->get('/persons/get/:id', function($id) { getPerson($id); });
$app->put('/persons/setprop/:id/:prop', function($id) { setPersonProp($id); });
$app->options('/.+', function() { options(); });
$app->error(function(Exception $e) {
echo("Error:");
var_dump($e);
});
$app->notFound(function() {
echo("Not Found!");
});
$app->run();
,도 $ APP- > NOTFOUND()이나 $ APP-> 오류()를 호출, 예를 들어
:-(... 내가 잘못 경로에 대한 405 오류가 계속 ... 등록 할 것으로 보인다 http://localhost/myapp/api/persons/NOT_EXISTING_ROUTE
참고 :
감사이 여기에 더보고! 몇 가지 이유로 이제 ** 405 메소드가 허용되지 않습니다. ** 더 이상 ** 500 **이 아닙니다. (이전에 크로스 도메인을 테스트하고 있었지만, 앵귤러 앱은 포트 9000의 툴툴 거리기에 의해 제공되었습니다.). 불행히도 $ app-> notFound()도 $ app-> error()도 등록 된 것 같지 않습니다. (내 업데이트 참조). – MarcoS