2015-12-02 23 views
6

Ben küçük ince 3 app var ve ince bir istisna zaman basitçe genel bir hata mesajı gösterir:İnce 3 blackholing hataları

İnce Uygulama Hatası

Bir web sitesi hatası oluştu. Geçici rahatsızlık için özür dilerim.

ince 2'de sen geriye dönük izleme vb size veren ayıklama modunu açmak için böyle bir şey yapabilirsiniz: ince 3'te

$app->config('debug', true); 

biri olarak görünmüyor. Ayrıca, benim istisna ve hata işleyicileri geçersiz kılıyor gibi görünüyor.

nasıl hataları tükürmek için ya da en azından kaynak üzerinden bakıldığında

+0

Hangi 3 sürümünü kullanıyorsunuz? –

+0

'3.0.0-RC3' - ama bunu RC2 ile yapıyordu –

cevap

15

(çıkış ayıklama bilgisi için KINT için boru) benim hata işleyicileri çağırmak için ince alabilirsiniz, bu hata ile ince 3 başlatmak mümkündür şöyle görünür:

$app = new \Slim\App(['settings' => ['displayErrorDetails' => true]]); 

Ben tamamen errorHandler değiştirmeden işten geçtikten sonra bu ayarı değiştirmek mümkün olmadığından emin değilim.

2

Varsayılan istisna işleyicisinde yığın yığınını tam olarak göstermek için j-v'nin ne dediğini kullanın.

Eğer bu sizin "değil Slim" hata işleyicisi önce kullanılacağından kendinizi o zaman Slim'in varsayılan istisna işleyici geçersiz kılmak gerek Slim, özel durumları işlemeye isterseniz:

$app = new \Slim\App(); 

$container = $app->getContainer(); 
$container['errorHandler'] = function(ServerRequestInterface $request, ResponseInterface $response, Exception $exception) { 
    //Handle exception here 
} 
1

Hata işleme oldukça iyi belgelenmiştir : http://www.slimframework.com/docs/handlers/error.html

$app = new \Slim\App(); 
$c = $app->getContainer(); 
$c['errorHandler'] = function ($c) { 
    return function ($request, $response, $exception) use ($c) { 
     return $c['response']->withStatus(500) 
           ->withHeader('Content-Type', 'text/html') 
           ->write('Something went wrong!'); 
     }; 
    };