सामग्री

    सर्वर प्रतिक्रिया 405 Method Not Allowed

    क्या है HTTP स्टेटस कोड 405

    HTTP स्टेटस कोड 405, जिसे "Method Not Allowed" के नाम से जाना जाता है, यह संकेत करता है कि क्लाइंट द्वारा उपयोग किया गया अनुरोध विधि सर्वर द्वारा अनुरोधित संसाधन के लिए समर्थित नहीं है। यह स्थिति तब उत्पन्न होती है जब सर्वर को पता होता है कि अनुरोधित संसाधन अस्तित्व में है, लेकिन उस संसाधन के लिए उपयोग की गई HTTP विधि मान्य नहीं है।

    405 - Method Not Allowed

    स्टेटस कोड 405 के सामान्य परिदृश्य

    • जब क्लाइंट POST विधि का उपयोग करता है, जबकि सर्वर केवल GET विधि को समर्थन करता है।
    • जब कोई संसाधन केवल PUT विधि का समर्थन करता है और क्लाइंट GET विधि का उपयोग करता है।
    • जब URL गलत है और क्लाइंट का अनुरोध विधि सही नहीं है।

    405 त्रुटि के व्यावहारिक उदाहरण

    1. POST के स्थान पर GET का उपयोग: जब क्लाइंट एक संसाधन के लिए POST अनुरोध भेजता है, जबकि सर्वर केवल GET अनुरोध स्वीकार करता है।
    2. PUT विधि के साथ केवल समर्थित संसाधन: एक API, जो केवल PUT विधि को स्वीकार करता है, पर GET अनुरोध भेजना।
    3. गलत URL और अनुरोध विधि का उदाहरण: यदि कोई उपयोगकर्ता एक गलत URL में GET अनुरोध भेजता है, जो केवल POST को स्वीकार करता है।

    विभिन्न प्रोग्रामिंग भाषाओं में 405 त्रुटि को सुधारना

    PHP

    PHP में, आप HTTP विधि को जांचने और उचित प्रतिक्रिया लौटाने के लिए निम्नलिखित कोड का उपयोग कर सकते हैं:

    
    if ($_SERVER['REQUEST_METHOD'] !== 'GET') {
        http_response_code(405);
        echo "Method Not Allowed";
    }
    

    Laravel जैसे फ्रेमवर्क में, आप रूट में विधियों को परिभाषित कर सकते हैं:

    
    Route::get('/example', 'ExampleController@index');
    

    JavaScript (Node.js)

    Node.js में, Express का उपयोग करते हुए आप निम्नलिखित कोड के माध्यम से विधियों को संभाल सकते हैं:

    
    app.get('/example', (req, res) => {
        res.send('GET method');
    });
    
    app.post('/example', (req, res) => {
        res.status(405).send('Method Not Allowed');
    });
    

    Python (Flask)

    Flask में, आप रूट सेटअप करते समय विधियों को निर्दिष्ट कर सकते हैं:

    
    @app.route('/example', methods=['GET'])
    def example():
        return 'GET method'
    

    आप यह भी कर सकते हैं:

    
    @app.route('/example', methods=['POST'])
    def example_post():
        return 'Method Not Allowed', 405
    

    आम त्रुटियाँ और उनके समाधान

    • सर्वर की गलत कॉन्फ़िगरेशन।
    • एप्लिकेशन में रूटिंग में गलतियाँ।
    • API के लिए विधियों की सहीता का परीक्षण करने के लिए सिफारिशें।

    स्टेटस 405 को संभालने के लिए सुझाव

    • उपयोगकर्ताओं को गलत विधियों के बारे में सूचित करें।
    • डेवलपर्स के लिए API दस्तावेज़ीकरण का महत्व।
    • 405 त्रुटियों को ट्रैक करने के लिए लॉगिंग सेटअप करना।

    405 त्रुटियों का ट्रैकिंग और समाधान

    जब आप HTTP स्टेटस कोड 405 का सामना करते हैं, तो यह आवश्यक है कि आप अपनी API या सर्वर के व्यवहार की जांच करें। सुनिश्चित करें कि आपके द्वारा उपयोग किए जा रहे सभी HTTP विधियाँ सही ढंग से परिभाषित हैं और सही संसाधनों के लिए निर्देशित हैं।

    अतिरिक्त कोड

    कोडविवरण
    405.0विधि की अनुमति नहीं है - उपयोग की गई अनुरोध विधि की अनुमति नहीं है।