Jestem bardzo nowy w węźle. Znajduję się w punkcie, w którym mam prosty serwer, który powinien po prostu wydrukować zapytanie zapytanie i żądanie body, które to zajmuje. Zrozumiałem, że funkcja "żądanie obsługi" w rzeczywistości nie zwraca obiektu żądania , a raczej obiektu IncomingMessage
.Uzyskaj adres URL i treść z IncomingMessage?
Są dwie rzeczy, których nie rozumiem: Jak uzyskać ciąg kwerendyi ciało.
Dostaję tylko ścieżkę, bez zapytania i niezdefiniowane dla ciała.
Kod serwera:
var http = require('http');
var server = http.createServer(function (request, response) {
console.log("Request query " + request.url);
console.log("Request body " + request.body);
response.writeHead(200, {"Content-Type": "text/plain"});
response.end("<h1>Hello world!</h1>");
});
server.listen(8000);
console.log("Server running at http://127.0.0.1:8000/");
Kod zapytania:
var http = require('http');
var options = {
host: '127.0.0.1',
port: 8000,
path: '/',
query: "argument=narnia",
method: 'GET'
};
var req = http.request(options, function(res) {
res.setEncoding('utf8');
res.on('data', function (chunk) {
console.log('response: ' + chunk);
});
});
req.on('error', function(e) {
console.log('problem with request: ' + e.message);
});
req.write("<h1>Hello!</h1>");
req.end();
Należy pamiętać, że jestem kompletnym nowicjuszem. Nie szukam tylko ekspresowych rozwiązań.