मैंने अभी SensioLabsInsight की खोज की और अच्छी कोड लिखने के लिए बहुत interesting tips पाया। यह बहुत अच्छा होगा अगर कुछ स्पष्टीकरण क्यों किया गया था (या क्यों नहीं) कुछ उपयोग किया जाना चाहिए - यहां तक कि exit
और die
जैसी बुनियादी सामग्री के लिए भी। इससे मुझे उन लोगों को चीजों को समझाने में मदद मिलेगी जिनके साथ मैं काम करता हूं।Symfony2 में निषिद्ध प्रतिक्रिया कैसे बनाएं?
तो मेरे सवाल का विशेष रूप से AccessDeniedHttpException के लिए है - यह कहते हैं:
Symfony अनुप्रयोगों AccessDeniedHttpException
फेंक नहीं करना चाहिए
तो मैं कैसे वापसी करते 403 आवेदन नियंत्रक या EventListener से निषिद्ध?
सबसे अच्छा अभ्यास क्या है?
ईमानदारी से कहूं तो मैंने सोचा कि यह होगा
throw new AccessDeniedHttpException()
के बाद से 404 के लिए आप
throw $this->createNotFoundException()
है लेकिन ऐसा लगता है कि मैं गलत था। (?)
ठीक है, मेरे मामले में यह 403 वापस नहीं आता है, लेकिन लॉगिन पृष्ठ पर रीडायरेक्ट करता है। लेकिन क्योंकि मैं एपीआई बना रहा हूं, मुझे 403 की आवश्यकता है। मुझे अब यह कहने का व्यवहार है: 'वर्तमान प्रतिक्रिया स्थिति कोड 200 है, लेकिन 403 अपेक्षित है। –
ठीक है, आप मैन्युअल रूप से इस तरह की प्रतिक्रिया वापस कर सकते हैं: // वापसी एक '403 निषिद्ध' HTTP प्रतिक्रिया $ प्रतिक्रिया = नया प्रतिक्रिया(); $ प्रतिक्रिया-> सेटस्टैटसकोड (403); $ घटना-> सेट रेस्पॉन्स ($ प्रतिक्रिया); लेकिन मुझे नहीं पता कि यह आपके विशेष मामले में लागू है या नहीं। – Tocacar