chrome-net

Use the Node net API in Chrome Apps

chrome-net

This module lets you use the Node.js net (TCP) API in Chrome Packaged Apps.

Instead of learning the quirks of Chrome's chrome.sockets API for networking in Chrome Apps just use the higher-level node API you're familiar with. Then, compile your code with browserify and you're all set!

This module is used by webtorrent.

npm install chrome-net

Use node's net API, including all parameter list shorthands and variations.

Example TCP client:

var net = require('chrome-net')
 
var client = net.createConnection({
  port: 1337,
  host: '127.0.0.1'
})
 
client.write('beep')
 
client.on('data', function (data) {
  console.log(data)
})
 
// .pipe() streaming API works too! 
 

Example TCP server:

var net = require('chrome-net')
 
var server = net.createServer()
 
server.on('listening', function () {
  console.log('listening')
})
 
server.on('connection', function (sock) {
  console.log('Connection from ' + sock.remoteAddress + ':' + sock.remotePort)
  sock.on('data', function (data) {
    console.log(data)
  })
})
 
server.listen(1337)
 

See nodejs.org for full API documentation: net

To run tests, use npm test. The tests will run TCP and UDP servers and launch a few different Chrome Packaged Apps with browserified client code. The tests currently require Chrome Canary on Mac. If you're on Windows or Linux, feel free to send a pull request to fix this limitation.

MIT. Copyright (c) Feross Aboukhadijeh & John Hiesey.