mirror of
https://github.com/nodejs/node.git
synced 2024-12-01 16:10:02 +01:00
316e2833f0
E.G. { "Content-Length": 10, "Content-Type": "text/html" } instead of [["Content-Length", 10], ["Content-Type", "text/html"]]. The main reason for this change is object-creation efficiency. This still needs testing and some further changes (like when receiving multiple header lines with the same field-name, they are concatenated with a comma but some headers ("Content-Length") should not be concatenated ; the new header line should replace the old value). Various thoughts on this subject: http://groups.google.com/group/nodejs/browse_thread/thread/9a67bb32706d9efc# http://four.livejournal.com/979640.html http://mail.gnome.org/archives/libsoup-list/2009-March/msg00015.html
42 lines
1003 B
JavaScript
42 lines
1003 B
JavaScript
include("mjsunit.js");
|
|
PORT = 8888;
|
|
|
|
var body1_s = "1111111111111111";
|
|
var body2_s = "22222";
|
|
|
|
var server = node.http.createServer(function (req, res) {
|
|
var body = req.uri.path === "/1" ? body1_s : body2_s;
|
|
res.sendHeader(200, { "Content-Type": "text/plain"
|
|
, "Content-Length": body.length
|
|
});
|
|
res.sendBody(body);
|
|
res.finish();
|
|
});
|
|
server.listen(PORT);
|
|
|
|
var client = node.http.createClient(PORT);
|
|
|
|
var body1 = "";
|
|
var body2 = "";
|
|
|
|
client.get("/1").finish(function (res1) {
|
|
res1.setBodyEncoding("utf8");
|
|
|
|
res1.addListener("body", function (chunk) {
|
|
body1 += chunk;
|
|
});
|
|
|
|
res1.addListener("complete", function () {
|
|
client.get("/2").finish(function (res2) {
|
|
res2.setBodyEncoding("utf8");
|
|
res2.addListener("body", function (chunk) { body2 += chunk; });
|
|
res2.addListener("complete", function () { server.close(); });
|
|
});
|
|
});
|
|
});
|
|
|
|
function onExit () {
|
|
assertEquals(body1_s, body1);
|
|
assertEquals(body2_s, body2);
|
|
}
|