⊗ppSpAiRs 52 of 83 menu

PHP में REST API

विशेष दृष्टिकोण मौजूद हैं, जो API को मानकीकृत करते हैं सामान्य सुविधा के लिए, API डेवलपर्स के साथ-साथ इसके उपयोगकर्ताओं के लिए भी।

ऐसे ही एक दृष्टिकोण है REST API. इसका मूल विचार यह है कि CRUD ऑपरेशन के लिए विभिन्न HTTP प्रोटोकॉल मethods का उपयोग करना आवश्यक है।

डेटा प्राप्त करने के लिए - GET method, डेटा बनाने के लिए - POST method, डेटा बदलने के लिए - PUT method, डेटा हटाने के लिए - DELETE method।

उदाहरण के लिए, आइए एक काल्पनिक API पर विचार करें, जो users को मैनिपुलेट करता है। आइए देखें, कि विभिन्न क्रियाओं के लिए URL कैसे दिखेंगे।

सभी users प्राप्त करें:

GET http://api.loc/users/

उसके id के आधार पर एक user प्राप्त करें:

GET http://api.loc/user/1/

user बनाएँ:

POST http://api.loc/user/

उसके id के आधार पर user बदलें:

PUT http://api.loc/user/1/

उसके id के आधार पर user हटाएँ:

DELETE http://api.loc/user/1/

आइए देखें कि REST API PHP में कैसे लागू किया जाता है। यहाँ एक निश्चित समस्या है। बात यह है कि PHP और CURL दोनों केवल GET और POST methods का समर्थन करते हैं:

<?php $method = $_SERVER['REQUEST_METHOD']; var_dump($method); // केवल GET और POST ?>

इसलिए, REST API को लागू करने के लिए एक चाल का सहारा लेना होगा। इसका सार यह है कि वास्तव में, डेटा केवल GET और POST methods द्वारा ही स्थानांतरित किया जाएगा, लेकिन हम अन्य methods के काम की नकल करेंगे एक कस्टम HTTP हेडर की सहायता से। इसे हम, उदाहरण के लिए, HTTP-X-HTTP-METHOD नाम देंगे।

तब हम इस हेडर की सामग्री निम्नलिखित तरीके से प्राप्त कर सकेंगे:

<?php $method = $_SERVER['HTTP-X-HTTP-METHOD']; ?>

अब हम API का कार्यान्वयन लिख सकते हैं:

<?php $method = $_SERVER['HTTP-X-HTTP-METHOD']; switch ($method) { case 'GET': // ... break; case 'POST': // ... break; case 'PUT': // ... break; case 'DELETE': // ... break; } ?>

इंटरनेट स्टोर के उत्पादों का REST API लागू करें।

CURL लाइब्रेरी की सहायता से लागू किए गए API के काम की जाँच करें।

हिन्दी
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
हम साइट के कार्य, विश्लेषण और व्यक्तिगतकरण के लिए कुकीज़ का उपयोग करते हैं। डेटा प्रसंस्करण गोपनीयता नीति के अनुसार किया जाता है।
सभी स्वीकार करें कॉन्फ़िगर करें अस्वीकार करें