Skip to content

isaacs/http-duplex-client

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 

http-duplex-client

Duplex API for making an HTTP request (write the req, read the response)

Usage

// vim: set softtabstop=3 shiftwidth=3:
var HttpDuplex = require ('./client.js')
var fs = require ('fs')
var input = fs . createReadStream (__filename)
var http = require ('http')
var assert = require ('assert')

var server = http . createServer (function (req, res) {
   req . pipe (res)
   server . close ()
})

server . listen (1337, function () {
   var req = HttpDuplex ({ port: 1337, method: 'POST' })
   input . pipe (req)
   var result = ''
   req . setEncoding ('utf8')
   req . on ('data', function (c) {
      result += c
   })
   req . on ('end', function () {
      assert . equal (result, fs . readFileSync (__filename, 'utf8'))
      console . log ('ok')
   })
})

You can do anything to it that you can do with a normal http request or response in Node.

If you're using Node v0.8, it'll try to load readable-stream. Make sure you install that. In node 0.10, it doesn't do that.

About

Duplex API for making an HTTP request (write the req, read the response)

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Sponsor this project

 

Packages

No packages published

Contributors 3

  •  
  •  
  •