Az előző posztban bemutattam 3 eltérő, de nagyon hasonló módszert a query-sting-ek elkapására, most pedig bemutatom a legjobbat és egyben legegyszerűbbet az "url" csomag használatával.
Elsőként require segítségével meghívható a csomag. Majd ez beletehető egy 'url' nevű konstansba.
const url = require("url");
Ezután az egész req.url átadható az url parse metódusának és az egészet egy queryStrig konstanba tehetjük. Ilyen módon:
const queryString = url.parse(req.url, true);
A queryStringet pedig JSON.stringify formában a request write metódusának
res.write(JSON.stringify(queryString.query, null, "\t"));
Az elkészült szerver fájl pedig
//Server.js
const http = require("http");
const url = require("url");
http.createServer(main).listen(8080, () => console.log("Server started..."));
function main(req, res) {
const queryString = url.parse(req.url, true);
console.log(queryString.query);
res.setHeader("Content-Type", "application/json");
res.write(JSON.stringify(queryString.query, null, "\t"));
res.end();
}
DEMÓ: https://kpvyn9.sse.codesandbox.io/?a=1&a=2&b=3&b=4&b=5&b=6
JSON válasz:
{
"a": [
"1",
"2"
],
"b": [
"3",
"4",
"5",
"6"
]
}
Ez itt egy régi írás ugyan, de még ma is tökéletesen alkalmazható módszer.