Free tutorials & notes in Hindi & English · Clean code examples 🧰 मुफ़्त PDF और फ़ोटो टूल्स →
🔴 Advanced  ·  Lesson 37

REST API

REST API क्या है

REST API programs को HTTP पर data साझा करने देता है। Client (phone app, दूसरी site, JavaScript) एक URL को request भेजता है, और आपका PHP server data से जवाब देता है — लगभग हमेशा JSON के रूप में। web page लौटाने के बजाय, server साफ़ data लौटाता है जिसे client इस्तेमाल कर सके।

💡 REST actions को HTTP methods से मैप करता है: GET read, POST create, PUT/PATCH update, DELETE remove।

HTTP methods

MethodActionCRUD
GETData लानाRead
POSTनया data जोड़नाCreate
PUT / PATCHData बदलनाUpdate
DELETEData हटानाDelete

हर action के लिए सही method इस्तेमाल करना ही API को "RESTful" और दूसरों के लिए समझने में आसान बनाता है।

JSON भेजना

<?php
  header("Content-Type: application/json");
  $data = ["name" => "Aman", "class" => 12];
  echo json_encode($data);
?>
{"name":"Aman","class":12}

Header client को बताता है जवाब JSON है, और json_encode आपके PHP array को JSON string में बदलता है। यह हर API response का मूल है।

Request data पढ़ना

<?php
  $method = $_SERVER["REQUEST_METHOD"];   // GET, POST...
  $id = $_GET["id"] ?? null;              // URL में ?id=5

  // JSON body (POST/PUT) के लिए:
  $body = json_decode(file_get_contents("php://input"), true);
?>

method को $_SERVER से, URL parameters को $_GET से, और raw JSON body को php://input से पढ़ते हैं, जिसे array में decode करते हैं।

एक सरल endpoint

<?php
  header("Content-Type: application/json");
  $method = $_SERVER["REQUEST_METHOD"];

  if ($method === "GET") {
      echo json_encode(["message" => "Here is your data"]);
  } elseif ($method === "POST") {
      http_response_code(201);
      echo json_encode(["message" => "Created"]);
  } else {
      http_response_code(405);
      echo json_encode(["error" => "Method not allowed"]);
  }
?>
{"message":"Here is your data"}

यह एक file HTTP method के आधार पर अलग जवाब देती है — असली API endpoint का बुनियादी आकार।

Status codes

http_response_code() से client को बताइए क्या हुआ।

<?php
  http_response_code(404);
  echo json_encode(["error" => "Not found"]);
?>

आम codes: 200 OK, 201 Created, 400 Bad Request, 404 Not Found, 500 Server Error। सही codes clients को अनुमान के बजाय ठीक react करने देते हैं।

आम गलतियाँ

  • JSON header भूलना। इसके बिना clients जवाब को JSON न समझें।
  • हमेशा 200 लौटाना। असली status codes इस्तेमाल कीजिए ताकि errors साफ़ हों।
  • JSON body को $_POST से पढ़ना। Raw JSON php://input से आता है, $_POST से नहीं।
  • Input validation न करना। API input भी user input है — validate कीजिए और prepared statements इस्तेमाल कीजिए।

सारांश

  • REST API HTTP पर data साझा करता है, आमतौर पर JSON के रूप में।
  • Methods CRUD से मैप होते हैं: GET, POST, PUT/PATCH, DELETE।
  • JSON लौटाइए header और json_encode से।
  • method, $_GET, और JSON body php://input से पढ़िए।
  • सही status codes set कीजिए http_response_code() से।

आगे, data format कीजिए PHP JSON से, या अपना API सुरक्षित कीजिए JWT authentication से।

अक्सर पूछे जाने वाले प्रश्न (FAQ)

REST API क्या है?
REST API programs के आपस में HTTP पर सरल नियमों से बात करने का तरीका है। Client एक URL को method (GET, POST वग़ैरह) के साथ request भेजता है, और server data से जवाब देता है, आमतौर पर JSON के रूप में। apps और websites इसी से data साझा करते हैं।
REST API में मुख्य HTTP methods क्या हैं?
पढ़ने को GET, बनाने को POST, update को PUT या PATCH, और हटाने को DELETE। ये स्वाभाविक रूप से CRUD operations से मेल खाते हैं, तो अच्छी तरह डिज़ाइन किया API हर action के लिए सही method इस्तेमाल करता है।
PHP से JSON कैसे लौटाएँ?
header("Content-Type: application/json") से header set कीजिए, फिर echo json_encode($data)। यह client को बताता है response JSON है और data उसी format में भेजता है।
Request का method और body कैसे पढ़ें?
method को $_SERVER["REQUEST_METHOD"], query parameters को $_GET, और raw JSON body को file_get_contents("php://input") जिसे फिर json_decode करते हैं।
API में status codes क्यों मायने रखते हैं?
Status codes client को बताते हैं क्या हुआ: 200 OK, 201 Created, 404 Not Found, 400 Bad Request, 500 Server Error। http_response_code() से सही code set करना clients को responses ठीक से संभालने देता है।
← Back to PHP Tutorial
🔗

Share this topic with a friend

यह topic किसी दोस्त को भेजें

Found it useful? Send it to a classmate learning the same thing.

अच्छा लगा? जो दोस्त यही सीख रहा है, उसे भेज दीजिए।

💻 लाइव कोड एडिटर

इस पेज के प्रोग्राम यहीं तैयार हैं — चलाएँ, बदलें और सीखें। कुछ भी इंस्टॉल किए बिना।
OneCompiler द्वारा संचालित। कोड एडिटर में अपने आप आ जाता है — Run दबाकर आउटपुट देखें। अगर एडिटर न खुले तो नए टैब में खोलें.
अगला topicJWT Authentication आपकी प्रगति: 37 / 50 (74%) · Lesson 38 / 50 आगे बढ़ें →

यह lesson कैसा लगा?

आपकी राय से हम content और बेहतर बनाते हैं।

अपना review और सुझाव लिखें (वैकल्पिक)

Review approve होने के बाद आपका नाम और शहर इसके साथ public दिख सकते हैं। Email या phone न लिखें।

▶ CodingEasily on YouTube

Video से सीखें – आसान Hindi में

चुनी हुई video: RDBMS भाग 3 – Class XI Commerce IT

▶ Channel subscribe करें