MERN Stack నేర్చుకోవడంలో 37వ రోజు
నేను నా MERN stack ప్రయాణంలో 37వ రోజులో ఉన్నాను.
నిన్న నేను /about మరియు /contact వంటి పేజీల కోసం స్ట్రక్చరల్ రూటింగ్ (structural routing) సెటప్ చేశాను. ఈరోజు నేను బ్యాకెండ్ డెవలప్మెంట్లోకి మారాను. నేను URL పార్సింగ్ (parsing) మరియు క్వెరీ పారామీటర్ల (query parameters) పై దృష్టి పెట్టాను.
మీరు ఒక వెబ్సైట్లో ఉత్పత్తి కోసం వెతికినప్పుడు, ఆ డేటా URLలో ఉంటుంది. Node.jsలో ఈ డేటాను ఎలా చదవాలో మరియు ఎలా ఉపయోగించాలో నేను నేర్చుకున్నాను.
URL అనేది కేవలం ఒక టెక్స్ట్ స్ట్రింగ్ మాత్రమే కాదు. అది ఒక స్ట్రక్చర్డ్ ఆబ్జెక్ట్ (structured object). అది ఎలా పనిచేస్తుందో ఇక్కడ ఉంది:
- Pathname: ఇది /search లేదా /api/products వంటి ప్రధాన లొకేషన్.
- Query: ఇవి ప్రశ్న గుర్తు (?) తర్వాత వచ్చే డేటా జంటలు, ఉదాహరణకు ?name=ali&id=7.
ఈ అడ్రస్లను విడగొట్టడానికి నేను url మాడ్యూల్ను ఉపయోగించాను. పార్సర్ (parser) ముడి URLని ఉపయోగించదగిన ఆబ్జెక్ట్గా మారుస్తుంది.
ఈరోజు నేను ఉపయోగించిన కోడ్ ఇక్కడ ఉంది:
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);
ఈ పద్ధతి క్వెరీ టెక్స్ట్ను క్లీన్ JavaScript ఆబ్జెక్ట్గా మారుస్తుంది. ఇది డేటా హ్యాండ్లింగ్ను సులభంగా మరియు సమర్థవంతంగా చేస్తుంది.
మూలం: https://dev.to/ali_hamza_589ec7b3eb6688d/day-37-of-learning-mern-stack-4758