MVC और request handling · प्रश्न 8 / 12
Extbase में createAction() आम तौर पर $this->redirect() से किसी दूसरे action पर redirect क्यों करता है?
1 उत्तर सही है। आसान
उत्तर दिखाएँ
उत्तर
- C ताकि page reload करने पर form दोबारा submit न हो और duplicate record न बने
व्याख्या
इस pattern को Post/Redirect/Get कहते हैं: redirect() एक HTTP 303 "See Other" response भेजता है, browser POST body को छोड़ देता है और target page को GET से माँगता है। यदि visitor फिर F5 या back button दबाता है, तो केवल GET request दोहराई जाती है – form submission नहीं। महत्वपूर्ण: redirect() एक response लौटाता है, इसलिए आपको return $this->redirect('list'); लिखना होगा। Flash messages redirect के बिना भी काम करते हैं, लेकिन default रूप से session में रखे जाते हैं ताकि वे redirect के बाद भी बने रहें।