Permalink
Browse files

Http exercise 4 pg. 63

Implemented it with readline and pipe the incoming data tp new file.
  • Loading branch information...
1 parent 5beabe9 commit 8ff0c9582fe9f108316450d251a4d89414a24236 Toon Ketels committed Dec 15, 2011
Showing with 47 additions and 2 deletions.
  1. +1 −1 files/test-http-2-file-0.txt
  2. +7 −1 files/test-http-2-file-1.txt
  3. +7 −0 files/test-http-2-file-2.txt
  4. +1 −0 files/test-http-2-file-3.txt
  5. +31 −0 http-4.js
@@ -1 +1 @@
-This is my first post, see if we can post faster.
+This is my first post, see if we can post faster.Having a file named a.txt, print the size of that files in bytes.
@@ -1 +1,7 @@
-This is my second post.
+This is my second post.Vestibulum id ligula porta felis euismod semper. Maecenas sed diam eget risus varius blandit sit amet non magna. Donec ullamcorper nulla non metus auctor fringilla. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Aenean lacinia bibendum nulla sed consectetur. Cras justo odio, dapibus ac facilisis in, egestas eget quam.
+
+Sed posuere consectetur est at lobortis. Donec sed odio dui. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Nullam id dolor id nibh ultricies vehicula ut id elit. Nulla vitae elit libero, a pharetra augue.
+
+Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Aenean lacinia bibendum nulla sed consectetur. Etiam porta sem malesuada magna mollis euismod. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Cras mattis consectetur purus sit amet fermentum. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum.
+
+Morbi leo risus, porta ac consectetur ac, vestibulum at eros. Donec sed odio dui. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Curabitur blandit tempus porttitor. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Aenean lacinia bibendum nulla sed consectetur.
@@ -0,0 +1,7 @@
+Vestibulum id ligula porta felis euismod semper. Maecenas sed diam eget risus varius blandit sit amet non magna. Donec ullamcorper nulla non metus auctor fringilla. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Aenean lacinia bibendum nulla sed consectetur. Cras justo odio, dapibus ac facilisis in, egestas eget quam.
+
+Sed posuere consectetur est at lobortis. Donec sed odio dui. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Nullam id dolor id nibh ultricies vehicula ut id elit. Nulla vitae elit libero, a pharetra augue.
+
+Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Aenean lacinia bibendum nulla sed consectetur. Etiam porta sem malesuada magna mollis euismod. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Cras mattis consectetur purus sit amet fermentum. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum.
+
+Morbi leo risus, porta ac consectetur ac, vestibulum at eros. Donec sed odio dui. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Curabitur blandit tempus porttitor. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Aenean lacinia bibendum nulla sed consectetur.
@@ -0,0 +1 @@
+Having a file named a.txt, print the size of that files in bytes.
View
@@ -0,0 +1,31 @@
+// GOAL: uploads file content to server of exercise 3.
+
+// Flow: accept argument
+// Create sourcestream (file)
+// Create destinationsteam (our server)
+
+var readline = require( 'readline' );
+var fs = require( 'fs' );
+var http = require( 'http' );
+
+var intface = readline.createInterface( process.stdin, process.stdout, null);
+intface.question( 'What file to you wish to upload?\n', function askForFile( answer ){
+ console.log( 'You chose ' + answer + '. Good choice!' );
+ // Create readstream for file
+ var file = __dirname + '/' + answer;
+ var options = { encoding: 'utf8' };
+ var readStream = fs.createReadStream( file, options );
+ var self = this;
+ readStream.on('error', function(error) {
+ console.log( 'Sorry, file does not exist.' );
+ });
+
+ var options = {
+ port: 4000,
+ method: 'POST'
+ };
+ readStream.pipe( http.request( options, function( response ){
+ intface.close();
+ process.stdin.destroy();
+ }));
+});

0 comments on commit 8ff0c95

Please sign in to comment.