2016-04-20 9 views
9

क्या सभी मिडलवेयर अक्षम किए बिना एक विशिष्ट मिडलवेयर को अक्षम करना संभव है?लार्वा 5.2.x विशिष्ट मिडलवेयर अक्षम करें

परीक्षण चलाने के दौरान मैं इसका उपयोग करूंगा, इसलिए मैं मिडलवेयर समूहों को परिभाषित नहीं करना चाहता हूं और फिर उन्हें अपने मार्गों में असाइन करना चाहता हूं।

$this->withoutMiddleware(); // <-- This will prevent all middleware 

$this->withoutMiddleware('web'); // <-- What I want is something like this 

उत्तर

0

ठीक है, आप middleware groups जो एक बहुत अच्छा तरीका है का उपयोग कर सकते हैं। कुछ समूहों को परिभाषित करें, और उन्हें अपने मार्गों पर असाइन करें।

+1

वेब, (संभावना) एक मिडलवेयर समूह पहले से ही है प्रश्न में आपका उल्लेख VerifyCsrfToken.php में किया था है । फिर भी, यह एक एकल मिडलवेयर, या मिडलवेयर समूह को अक्षम करने का तरीका नहीं बताता है। –

3

मैं कोई वैकल्पिक समाधान है, तो आप अपने environnement के अनुसार अपने को प्रभावित किया मिडलवेयर में एक शर्त जोड़ सकते हैं:

public function handle($request, Closure $next) 
{ 
    if (App::environment('testing')) { 
     return $next($request); 
    } 

    // Your middleware logic 

    return $next($request); 
} 
+0

मुझे लगता है कि यह मेरे लिए एक अच्छा समाधान होना चाहिए। काश एक तरीका था कि आप एक ठोस मिडलवेयर को अक्षम कर सकते हैं। – aleixfabra

+0

मुझे इस तरह के एक समारोह के अस्तित्व को नहीं पता है। यह लार्वा रेपो – soywod

+0

के लिए एक स्मार्ट पुल अनुरोध हो सकता है मैं आपके साथ सहमत हूं। – aleixfabra

0

आप मिडलवेयर अपने आप में सरणी को छोड़कर $ करने के लिए विशेष मार्गों जोड़ सकते हैं।

उदाहरण के लिए: मैं अपने एपीआई मार्गों वेब मिडलवेयर है नहीं करना चाहता था, तो यह क्या मैं

protected $except = [ 
    "api/*", 
    "more/routes", 
]; 
संबंधित मुद्दे