MERN Stack सीखने का 37वाँ दिन
मैं अपनी MERN stack यात्रा के 37वें दिन पर हूँ।
कल, मैंने /about और /contact जैसे पेजों के लिए क्लीन राउटिंग (clean routing) सेट की थी। आज, मैंने बैकएंड डेटा कम्युनिकेशन (backend data communication) पर ध्यान केंद्रित किया। मैंने URL parsing और query parameters का अध्ययन किया।
जब आप किसी वेबसाइट पर उत्पादों (products) को खोजते हैं, तो साइट URL के माध्यम से डेटा भेजती है। आप अक्सर एड्रेस बार में प्रश्न चिह्न (?) के बाद अतिरिक्त टेक्स्ट देखते हैं। यह क्वेरी डेटा (query data) है।
मैंने इस डेटा को पढ़ने के लिए Node.js url module का उपयोग करना सीखा। यह मॉड्यूल एक लंबे URL स्ट्रिंग को एक स्ट्रक्चर्ड ऑब्जेक्ट (structured object) में बदल देता है।
डेटा इस प्रकार विभाजित होता है:
- Pathname: यह मुख्य स्थान है, जैसे कि /search या /api/products।
- Query: ये प्रश्न चिह्न के बाद आने वाले key-value pairs हैं, जैसे ?name=ali&id=7।
url module इस डेटा को आपके कोड में उपयोग करना आसान बना देता है। यह स्ट्रिंग को JavaScript object में बदल देता है।
उदाहरण कोड:
const http = require("http");
const url = require("url");
const server = http.createServer((req, res) => {
let parsedUrl = url.parse(req.url, true);
let pathname = parsedUrl.pathname;
let queryData = parsedUrl.query;
if (pathname === "/search") {
res.writeHead(200, { "Content-Type": "text/plain" });
res.end(`Searching logs for user: ${queryData.name} with ID: ${queryData.id}`);
} else {
res.end("Standard Endpoint View");
}
});
server.listen(8000);
URLs को parse करना सीखने से आपको डायनेमिक वेबसाइट्स बनाने में मदद मिलती है। अब आप सीधे वेब एड्रेस से यूजर इनपुट को कैप्चर कर सकते हैं।
Source: https://dev.to/ali_hamza_589ec7b3eb6688d/day-37-of-learning-mern-stack-4758