实例介绍
从官方介绍可知,webrtc不仅可提供以摄像头为源的视频通讯功能,也能进行主机的screensharing,但目前支持webrtc的浏览器,无法直接截取主机屏幕,故无法使用此功能,需要插件支持才能实现屏幕截取共享功能,这里就介绍如何使用chrome浏览器进行屏幕共享。具体参考:http://blog.csdn.net/yunjinwang/article/details/78851036
【实例截图】
【核心代码】
screen_sharing
└── screen_sharing
├── desktopCapture_chrome_plugin
│ ├── background-script.js
│ ├── content-script.js
│ ├── icon.png
│ └── manifest.json
└── screen_test_server
├── css
│ └── main.css
├── index.html
├── js
│ ├── lib
│ │ └── adapter.js
│ ├── main.js
│ └── Screen-Capturing.js
├── key
│ ├── cert.crt
│ └── cert.key
├── node_modules
│ ├── node-static
│ │ ├── benchmark
│ │ │ └── node-static-0.3.0.txt
│ │ ├── bin
│ │ │ └── cli.js
│ │ ├── examples
│ │ │ └── file-server.js
│ │ ├── lib
│ │ │ ├── node-static
│ │ │ │ └── util.js
│ │ │ └── node-static.js
│ │ ├── LICENSE
│ │ ├── node_modules
│ │ │ ├── colors
│ │ │ │ ├── examples
│ │ │ │ │ ├── normal-usage.js
│ │ │ │ │ └── safe-string.js
│ │ │ │ ├── lib
│ │ │ │ │ ├── colors.js
│ │ │ │ │ ├── custom
│ │ │ │ │ │ ├── trap.js
│ │ │ │ │ │ └── zalgo.js
│ │ │ │ │ ├── extendStringPrototype.js
│ │ │ │ │ ├── index.js
│ │ │ │ │ ├── maps
│ │ │ │ │ │ ├── america.js
│ │ │ │ │ │ ├── rainbow.js
│ │ │ │ │ │ ├── random.js
│ │ │ │ │ │ └── zebra.js
│ │ │ │ │ ├── styles.js
│ │ │ │ │ └── system
│ │ │ │ │ └── supports-colors.js
│ │ │ │ ├── LICENSE
│ │ │ │ ├── package.json
│ │ │ │ ├── ReadMe.md
│ │ │ │ ├── safe.js
│ │ │ │ └── themes
│ │ │ │ └── generic-logging.js
│ │ │ ├── mime
│ │ │ │ ├── build
│ │ │ │ │ ├── build.js
│ │ │ │ │ └── test.js
│ │ │ │ ├── cli.js
│ │ │ │ ├── LICENSE
│ │ │ │ ├── mime.js
│ │ │ │ ├── package.json
│ │ │ │ ├── README.md
│ │ │ │ └── types.json
│ │ │ └── optimist
│ │ │ ├── example
│ │ │ │ ├── boolean_double.js
│ │ │ │ ├── boolean_single.js
│ │ │ │ ├── bool.js
│ │ │ │ ├── default_hash.js
│ │ │ │ ├── default_singles.js
│ │ │ │ ├── divide.js
│ │ │ │ ├── line_count.js
│ │ │ │ ├── line_count_options.js
│ │ │ │ ├── line_count_wrap.js
│ │ │ │ ├── nonopt.js
│ │ │ │ ├── reflect.js
│ │ │ │ ├── short.js
│ │ │ │ ├── string.js
│ │ │ │ ├── usage-options.js
│ │ │ │ └── xup.js
│ │ │ ├── index.js
│ │ │ ├── LICENSE
│ │ │ ├── node_modules
│ │ │ │ ├── minimist
│ │ │ │ │ ├── example
│ │ │ │ │ │ └── parse.js
│ │ │ │ │ ├── index.js
│ │ │ │ │ ├── LICENSE
│ │ │ │ │ ├── package.json
│ │ │ │ │ ├── readme.markdown
│ │ │ │ │ └── test
│ │ │ │ │ ├── bool.js
│ │ │ │ │ ├── dash.js
│ │ │ │ │ ├── default_bool.js
│ │ │ │ │ ├── dotted.js
│ │ │ │ │ ├── long.js
│ │ │ │ │ ├── num.js
│ │ │ │ │ ├── parse.js
│ │ │ │ │ ├── parse_modified.js
│ │ │ │ │ ├── short.js
│ │ │ │ │ └── whitespace.js
│ │ │ │ └── wordwrap
│ │ │ │ ├── example
│ │ │ │ │ ├── center.js
│ │ │ │ │ └── meat.js
│ │ │ │ ├── index.js
│ │ │ │ ├── LICENSE
│ │ │ │ ├── package.json
│ │ │ │ ├── README.markdown
│ │ │ │ └── test
│ │ │ │ ├── break.js
│ │ │ │ ├── idleness.txt
│ │ │ │ └── wrap.js
│ │ │ ├── package.json
│ │ │ ├── readme.markdown
│ │ │ └── test
│ │ │ ├── _
│ │ │ │ ├── argv.js
│ │ │ │ └── bin.js
│ │ │ ├── dash.js
│ │ │ ├── _.js
│ │ │ ├── parse.js
│ │ │ ├── parse_modified.js
│ │ │ ├── short.js
│ │ │ ├── usage.js
│ │ │ └── whitespace.js
│ │ ├── package.json
│ │ ├── README.md
│ │ └── test
│ │ ├── fixtures
│ │ │ ├── empty.css
│ │ │ ├── hello.txt
│ │ │ ├── index.html
│ │ │ └── there
│ │ │ └── index.html
│ │ └── integration
│ │ └── node-static-test.js
│ └── socket.io
│ ├── History.md
│ ├── index.js
│ ├── lib
│ │ ├── client.js
│ │ ├── index.js
│ │ ├── namespace.js
│ │ └── socket.js
│ ├── LICENSE
│ ├── Makefile
│ ├── node_modules
│ │ ├── debug
│ │ │ ├── debug.js
│ │ │ ├── index.js
│ │ │ ├── lib
│ │ │ │ └── debug.js
│ │ │ ├── package.json
│ │ │ └── Readme.md
│ │ ├── engine.io
│ │ │ ├── History.md
│ │ │ ├── index.js
│ │ │ ├── lib
│ │ │ │ ├── engine.io.js
│ │ │ │ ├── server.js
│ │ │ │ ├── socket.js
│ │ │ │ ├── transport.js
│ │ │ │ └── transports
│ │ │ │ ├── index.js
│ │ │ │ ├── polling.js
│ │ │ │ ├── polling-jsonp.js
│ │ │ │ ├── polling-xhr.js
│ │ │ │ └── websocket.js
│ │ │ ├── Makefile
│ │ │ ├── node_modules
│ │ │ │ ├── base64id
│ │ │ │ │ ├── lib
│ │ │ │ │ │ └── base64id.js
│ │ │ │ │ ├── package.json
│ │ │ │ │ └── README.md
│ │ │ │ ├── debug
│ │ │ │ │ ├── browser.js
│ │ │ │ │ ├── component.json
│ │ │ │ │ ├── debug.js
│ │ │ │ │ ├── History.md
│ │ │ │ │ ├── Makefile
│ │ │ │ │ ├── node.js
│ │ │ │ │ ├── node_modules
│ │ │ │ │ │ └── ms
│ │ │ │ │ │ ├── index.js
│ │ │ │ │ │ ├── package.json
│ │ │ │ │ │ └── README.md
│ │ │ │ │ ├── package.json
│ │ │ │ │ └── Readme.md
│ │ │ │ ├── engine.io-parser
│ │ │ │ │ ├── History.md
│ │ │ │ │ ├── index.js
│ │ │ │ │ ├── lib
│ │ │ │ │ │ ├── browser.js
│ │ │ │ │ │ ├── index.js
│ │ │ │ │ │ └── keys.js
│ │ │ │ │ ├── LICENSE
│ │ │ │ │ ├── Makefile
│ │ │ │ │ ├── node_modules
│ │ │ │ │ │ ├── after
│ │ │ │ │ │ │ ├── index.js
│ │ │ │ │ │ │ ├── LICENCE
│ │ │ │ │ │ │ ├── package.json
│ │ │ │ │ │ │ ├── README.md
│ │ │ │ │ │ │ └── test
│ │ │ │ │ │ │ └── after-test.js
│ │ │ │ │ │ ├── arraybuffer.slice
│ │ │ │ │ │ │ ├── index.js
│ │ │ │ │ │ │ ├── Makefile
│ │ │ │ │ │ │ ├── package.json
│ │ │ │ │ │ │ ├── README.md
│ │ │ │ │ │ │ └── test
│ │ │ │ │ │ │ └── slice-buffer.js
│ │ │ │ │ │ ├── base64-arraybuffer
│ │ │ │ │ │ │ ├── grunt.js
│ │ │ │ │ │ │ ├── lib
│ │ │ │ │ │ │ │ └── base64-arraybuffer.js
│ │ │ │ │ │ │ ├── LICENSE-MIT
│ │ │ │ │ │ │ ├── package.json
│ │ │ │ │ │ │ ├── package.json~
│ │ │ │ │ │ │ ├── README.md
│ │ │ │ │ │ │ ├── README.md~
│ │ │ │ │ │ │ └── test
│ │ │ │ │ │ │ └── base64-arraybuffer_test.js
│ │ │ │ │ │ ├── blob
│ │ │ │ │ │ │ ├── index.js
│ │ │ │ │ │ │ ├── Makefile
│ │ │ │ │ │ │ ├── package.json
│ │ │ │ │ │ │ ├── README.md
│ │ │ │ │ │ │ └── test
│ │ │ │ │ │ │ └── index.js
│ │ │ │ │ │ └── utf8
│ │ │ │ │ │ ├── bower.json
│ │ │ │ │ │ ├── component.json
│ │ │ │ │ │ ├── coverage
│ │ │ │ │ │ │ ├── index.html
│ │ │ │ │ │ │ ├── prettify.css
│ │ │ │ │ │ │ ├── prettify.js
│ │ │ │ │ │ │ └── utf8.js
│ │ │ │ │ │ │ ├── index.html
│ │ │ │ │ │ │ └── utf8.js.html
│ │ │ │ │ │ ├── Gruntfile.js
│ │ │ │ │ │ ├── LICENSE-GPL.txt
│ │ │ │ │ │ ├── LICENSE-MIT.txt
│ │ │ │ │ │ ├── package.json
│ │ │ │ │ │ ├── README.md
│ │ │ │ │ │ ├── tests
│ │ │ │ │ │ │ ├── generate-test-data.py
│ │ │ │ │ │ │ ├── index.html
│ │ │ │ │ │ │ └── tests.js
│ │ │ │ │ │ ├── utf8.js
│ │ │ │ │ │ └── x.js
│ │ │ │ │ ├── package.json
│ │ │ │ │ └── Readme.md
│ │ │ │ └── ws
│ │ │ │ ├── bench
│ │ │ │ │ ├── parser.benchmark.js
│ │ │ │ │ ├── sender.benchmark.js
│ │ │ │ │ ├── speed.js
│ │ │ │ │ └── util.js
│ │ │ │ ├── bin
│ │ │ │ │ └── wscat
│ │ │ │ ├── binding.gyp
│ │ │ │ ├── build
│ │ │ │ │ └── config.gypi
│ │ │ │ ├── builderror.log
│ │ │ │ ├── doc
│ │ │ │ │ └── ws.md
│ │ │ │ ├── examples
│ │ │ │ │ ├── fileapi
│ │ │ │ │ │ ├── package.json
│ │ │ │ │ │ ├── public
│ │ │ │ │ │ │ ├── app.js
│ │ │ │ │ │ │ ├── index.html
│ │ │ │ │ │ │ └── uploader.js
│ │ │ │ │ │ └── server.js
│ │ │ │ │ ├── serverstats
│ │ │ │ │ │ ├── package.json
│ │ │ │ │ │ ├── public
│ │ │ │ │ │ │ └── index.html
│ │ │ │ │ │ └── server.js
│ │ │ │ │ ├── serverstats-express_3
│ │ │ │ │ │ ├── package.json
│ │ │ │ │ │ ├── public
│ │ │ │ │ │ │ └── index.html
│ │ │ │ │ │ └── server.js
│ │ │ │ │ └── ssl.js
│ │ │ │ ├── History.md
│ │ │ │ ├── index.js
│ │ │ │ ├── lib
│ │ │ │ │ ├── browser.js
│ │ │ │ │ ├── BufferPool.js
│ │ │ │ │ ├── BufferUtil.fallback.js
│ │ │ │ │ ├── BufferUtil.js
│ │ │ │ │ ├── ErrorCodes.js
│ │ │ │ │ ├── Receiver.hixie.js
│ │ │ │ │ ├── Receiver.js
│ │ │ │ │ ├── Sender.hixie.js
│ │ │ │ │ ├── Sender.js
│ │ │ │ │ ├── Validation.fallback.js
│ │ │ │ │ ├── Validation.js
│ │ │ │ │ ├── WebSocket.js
│ │ │ │ │ └── WebSocketServer.js
│ │ │ │ ├── Makefile
│ │ │ │ ├── node_modules
│ │ │ │ │ ├── commander
│ │ │ │ │ │ ├── History.md
│ │ │ │ │ │ ├── index.js
│ │ │ │ │ │ ├── lib
│ │ │ │ │ │ │ └── commander.js
│ │ │ │ │ │ ├── Makefile
│ │ │ │ │ │ ├── package.json
│ │ │ │ │ │ └── Readme.md
│ │ │ │ │ ├── nan
│ │ │ │ │ │ ├── LICENSE
│ │ │ │ │ │ ├── nan.h
│ │ │ │ │ │ ├── package.json
│ │ │ │ │ │ └── README.md
│ │ │ │ │ ├── options
│ │ │ │ │ │ ├── lib
│ │ │ │ │ │ │ └── options.js
│ │ │ │ │ │ ├── Makefile
│ │ │ │ │ │ ├── package.json
│ │ │ │ │ │ └── README.md
│ │ │ │ │ └── tinycolor
│ │ │ │ │ ├── example.js
│ │ │ │ │ ├── package.json
│ │ │ │ │ ├── README.md
│ │ │ │ │ └── tinycolor.js
│ │ │ │ ├── package.json
│ │ │ │ ├── README.md
│ │ │ │ ├── src
│ │ │ │ │ ├── bufferutil.cc
│ │ │ │ │ └── validation.cc
│ │ │ │ └── test
│ │ │ │ ├── autobahn.js
│ │ │ │ ├── autobahn-server.js
│ │ │ │ ├── BufferPool.test.js
│ │ │ │ ├── fixtures
│ │ │ │ │ ├── agent1-cert.pem
│ │ │ │ │ ├── agent1-key.pem
│ │ │ │ │ ├── ca1-cert.pem
│ │ │ │ │ ├── ca1-key.pem
│ │ │ │ │ ├── certificate.pem
│ │ │ │ │ ├── key.pem
│ │ │ │ │ ├── request.pem
│ │ │ │ │ └── textfile
│ │ │ │ ├── hybi-common.js
│ │ │ │ ├── Receiver.hixie.test.js
│ │ │ │ ├── Receiver.test.js
│ │ │ │ ├── Sender.hixie.test.js
│ │ │ │ ├── Sender.test.js
│ │ │ │ ├── testserver.js
│ │ │ │ ├── Validation.test.js
│ │ │ │ ├── WebSocket.integration.js
│ │ │ │ ├── WebSocketServer.test.js
│ │ │ │ └── WebSocket.test.js
│ │ │ ├── package.json
│ │ │ └── README.md
│ │ ├── has-binary-data
│ │ │ ├── fixtures
│ │ │ │ └── big.json
│ │ │ ├── gen.js
│ │ │ ├── index.js
│ │ │ ├── LICENSE
│ │ │ ├── Makefile
│ │ │ ├── node_modules
│ │ │ │ └── isarray
│ │ │ │ ├── build
│ │ │ │ │ └── build.js
│ │ │ │ ├── component.json
│ │ │ │ ├── index.js
│ │ │ │ ├── package.json
│ │ │ │ └── README.md
│ │ │ ├── package.json
│ │ │ ├── README.md
│ │ │ └── test.js
│ │ ├── socket.io-adapter
│ │ │ ├── History.md
│ │ │ ├── index.js
│ │ │ ├── node_modules
│ │ │ │ ├── debug
│ │ │ │ │ ├── browser.js
│ │ │ │ │ ├── component.json
│ │ │ │ │ ├── debug.js
│ │ │ │ │ ├── History.md
│ │ │ │ │ ├── Makefile
│ │ │ │ │ ├── node.js
│ │ │ │ │ ├── node_modules
│ │ │ │ │ │ └── ms
│ │ │ │ │ │ ├── index.js
│ │ │ │ │ │ ├── package.json
│ │ │ │ │ │ └── README.md
│ │ │ │ │ ├── package.json
│ │ │ │ │ └── Readme.md
│ │ │ │ └── object-keys
│ │ │ │ ├── CHANGELOG.md
│ │ │ │ ├── index.js
│ │ │ │ ├── isArguments.js
│ │ │ │ ├── LICENSE
│ │ │ │ ├── package.json
│ │ │ │ └── README.md
│ │ │ ├── package.json
│ │ │ └── Readme.md
│ │ ├── socket.io-client
│ │ │ ├── History.md
│ │ │ ├── index.js
│ │ │ ├── lib
│ │ │ │ ├── index.js
│ │ │ │ ├── manager.js
│ │ │ │ ├── on.js
│ │ │ │ ├── socket.js
│ │ │ │ └── url.js
│ │ │ ├── Makefile
│ │ │ ├── node_modules
│ │ │ │ ├── component-bind
│ │ │ │ │ ├── component.json
│ │ │ │ │ ├── History.md
│ │ │ │ │ ├── index.js
│ │ │ │ │ ├── Makefile
│ │ │ │ │ ├── package.json
│ │ │ │ │ └── Readme.md
│ │ │ │ ├── component-emitter
│ │ │ │ │ ├── bower.json
│ │ │ │ │ ├── component.json
│ │ │ │ │ ├── History.md
│ │ │ │ │ ├── index.js
│ │ │ │ │ ├── Makefile
│ │ │ │ │ ├── package.json
│ │ │ │ │ └── Readme.md
│ │ │ │ ├── engine.io-client
│ │ │ │ │ ├── engine.io.js
│ │ │ │ │ ├── History.md
│ │ │ │ │ ├── index.js
│ │ │ │ │ ├── lib
│ │ │ │ │ │ ├── index.js
│ │ │ │ │ │ ├── socket.js
│ │ │ │ │ │ ├── transport.js
│ │ │ │ │ │ ├── transports
│ │ │ │ │ │ │ ├── index.js
│ │ │ │ │ │ │ ├── polling.js
│ │ │ │ │ │ │ ├── polling-jsonp.js
│ │ │ │ │ │ │ ├── polling-xhr.js
│ │ │ │ │ │ │ └── websocket.js
│ │ │ │ │ │ └── xmlhttprequest.js
│ │ │ │ │ ├── Makefile
│ │ │ │ │ ├── node_modules
│ │ │ │ │ │ ├── component-inherit
│ │ │ │ │ │ │ ├── component.json
│ │ │ │ │ │ │ ├── History.md
│ │ │ │ │ │ │ ├── index.js
│ │ │ │ │ │ │ ├── Makefile
│ │ │ │ │ │ │ ├── package.json
│ │ │ │ │ │ │ ├── Readme.md
│ │ │ │ │ │ │ └── test
│ │ │ │ │ │ │ └── inherit.js
│ │ │ │ │ │ ├── engine.io-parser
│ │ │ │ │ │ │ ├── History.md
│ │ │ │ │ │ │ ├── index.js
│ │ │ │ │ │ │ ├── lib
│ │ │ │ │ │ │ │ ├── browser.js
│ │ │ │ │ │ │ │ ├── index.js
│ │ │ │ │ │ │ │ └── keys.js
│ │ │ │ │ │ │ ├── LICENSE
│ │ │ │ │ │ │ ├── Makefile
│ │ │ │ │ │ │ ├── node_modules
│ │ │ │ │ │ │ │ ├── after
│ │ │ │ │ │ │ │ │ ├── index.js
│ │ │ │ │ │ │ │ │ ├── LICENCE
│ │ │ │ │ │ │ │ │ ├── package.json
│ │ │ │ │ │ │ │ │ ├── README.md
│ │ │ │ │ │ │ │ │ └── test
│ │ │ │ │ │ │ │ │ └── after-test.js
│ │ │ │ │ │ │ │ ├── arraybuffer.slice
│ │ │ │ │ │ │ │ │ ├── index.js
│ │ │ │ │ │ │ │ │ ├── Makefile
│ │ │ │ │ │ │ │ │ ├── package.json
│ │ │ │ │ │ │ │ │ ├── README.md
│ │ │ │ │ │ │ │ │ └── test
│ │ │ │ │ │ │ │ │ └── slice-buffer.js
│ │ │ │ │ │ │ │ ├── base64-arraybuffer
│ │ │ │ │ │ │ │ │ ├── grunt.js
│ │ │ │ │ │ │ │ │ ├── lib
│ │ │ │ │ │ │ │ │ │ └── base64-arraybuffer.js
│ │ │ │ │ │ │ │ │ ├── LICENSE-MIT
│ │ │ │ │ │ │ │ │ ├── package.json
│ │ │ │ │ │ │ │ │ ├── package.json~
│ │ │ │ │ │ │ │ │ ├── README.md
│ │ │ │ │ │ │ │ │ ├── README.md~
│ │ │ │ │ │ │ │ │ └── test
│ │ │ │ │ │ │ │ │ └── base64-arraybuffer_test.js
│ │ │ │ │ │ │ │ ├── blob
│ │ │ │ │ │ │ │ │ ├── index.js
│ │ │ │ │ │ │ │ │ ├── Makefile
│ │ │ │ │ │ │ │ │ ├── package.json
│ │ │ │ │ │ │ │ │ ├── README.md
│ │ │ │ │ │ │ │ │ └── test
│ │ │ │ │ │ │ │ │ └── index.js
│ │ │ │ │ │ │ │ └── utf8
│ │ │ │ │ │ │ │ ├── bower.json
│ │ │ │ │ │ │ │ ├── component.json
│ │ │ │ │ │ │ │ ├── coverage
│ │ │ │ │ │ │ │ │ ├── index.html
│ │ │ │ │ │ │ │ │ ├── prettify.css
│ │ │ │ │ │ │ │ │ ├── prettify.js
│ │ │ │ │ │ │ │ │ └── utf8.js
│ │ │ │ │ │ │ │ │ ├── index.html
│ │ │ │ │ │ │ │ │ └── utf8.js.html
│ │ │ │ │ │ │ │ ├── Gruntfile.js
│ │ │ │ │ │ │ │ ├── LICENSE-GPL.txt
│ │ │ │ │ │ │ │ ├── LICENSE-MIT.txt
│ │ │ │ │ │ │ │ ├── package.json
│ │ │ │ │ │ │ │ ├── README.md
│ │ │ │ │ │ │ │ ├── tests
│ │ │ │ │ │ │ │ │ ├── generate-test-data.py
│ │ │ │ │ │ │ │ │ ├── index.html
│ │ │ │ │ │ │ │ │ └── tests.js
│ │ │ │ │ │ │ │ ├── utf8.js
│ │ │ │ │ │ │ │ └── x.js
│ │ │ │ │ │ │ ├── package.json
│ │ │ │ │ │ │ └── Readme.md
│ │ │ │ │ │ ├── has-cors
│ │ │ │ │ │ │ ├── component.json
│ │ │ │ │ │ │ ├── History.md
│ │ │ │ │ │ │ ├── index.js
│ │ │ │ │ │ │ ├── Makefile
│ │ │ │ │ │ │ ├── node_modules
│ │ │ │ │ │ │ │ └── global
│ │ │ │ │ │ │ │ ├── component.json
│ │ │ │ │ │ │ │ ├── History.md
│ │ │ │ │ │ │ │ ├── index.js
│ │ │ │ │ │ │ │ ├── Makefile
│ │ │ │ │ │ │ │ ├── package.json
│ │ │ │ │ │ │ │ ├── Readme.md
│ │ │ │ │ │ │ │ └── test
│ │ │ │ │ │ │ │ ├── index.html
│ │ │ │ │ │ │ │ ├── mocha.css
│ │ │ │ │ │ │ │ ├── mocha.js
│ │ │ │ │ │ │ │ └── test.js
│ │ │ │ │ │ │ ├── package.json
│ │ │ │ │ │ │ └── Readme.md
│ │ │ │ │ │ ├── parsejson
│ │ │ │ │ │ │ ├── index.js
│ │ │ │ │ │ │ ├── Makefile
│ │ │ │ │ │ │ ├── node_modules
│ │ │ │ │ │ │ │ └── better-assert
│ │ │ │ │ │ │ │ ├── example.js
│ │ │ │ │ │ │ │ ├── History.md
│ │ │ │ │ │ │ │ ├── index.js
│ │ │ │ │ │ │ │ ├── Makefile
│ │ │ │ │ │ │ │ ├── node_modules
│ │ │ │ │ │ │ │ │ └── callsite
│ │ │ │ │ │ │ │ │ ├── History.md
│ │ │ │ │ │ │ │ │ ├── index.js
│ │ │ │ │ │ │ │ │ ├── Makefile
│ │ │ │ │ │ │ │ │ ├── package.json
│ │ │ │ │ │ │ │ │ └── Readme.md
│ │ │ │ │ │ │ │ ├── package.json
│ │ │ │ │ │ │ │ └── Readme.md
│ │ │ │ │ │ │ ├── package.json
│ │ │ │ │ │ │ └── test.js
│ │ │ │ │ │ ├── parseqs
│ │ │ │ │ │ │ ├── index.js
│ │ │ │ │ │ │ ├── Makefile
│ │ │ │ │ │ │ ├── node_modules
│ │ │ │ │ │ │ │ └── better-assert
│ │ │ │ │ │ │ │ ├── example.js
│ │ │ │ │ │ │ │ ├── History.md
│ │ │ │ │ │ │ │ ├── index.js
│ │ │ │ │ │ │ │ ├── Makefile
│ │ │ │ │ │ │ │ ├── node_modules
│ │ │ │ │ │ │ │ │ └── callsite
│ │ │ │ │ │ │ │ │ ├── History.md
│ │ │ │ │ │ │ │ │ ├── index.js
│ │ │ │ │ │ │ │ │ ├── Makefile
│ │ │ │ │ │ │ │ │ ├── package.json
│ │ │ │ │ │ │ │ │ └── Readme.md
│ │ │ │ │ │ │ │ ├── package.json
│ │ │ │ │ │ │ │ └── Readme.md
│ │ │ │ │ │ │ ├── package.json
│ │ │ │ │ │ │ └── test.js
│ │ │ │ │ │ ├── parseuri
│ │ │ │ │ │ │ ├── History.md
│ │ │ │ │ │ │ ├── index.js
│ │ │ │ │ │ │ ├── Makefile
│ │ │ │ │ │ │ ├── node_modules
│ │ │ │ │ │ │ │ └── better-assert
│ │ │ │ │ │ │ │ ├── example.js
│ │ │ │ │ │ │ │ ├── History.md
│ │ │ │ │ │ │ │ ├── index.js
│ │ │ │ │ │ │ │ ├── Makefile
│ │ │ │ │ │ │ │ ├── node_modules
│ │ │ │ │ │ │ │ │ └── callsite
│ │ │ │ │ │ │ │ │ ├── History.md
│ │ │ │ │ │ │ │ │ ├── index.js
│ │ │ │ │ │ │ │ │ ├── Makefile
│ │ │ │ │ │ │ │ │ ├── package.json
│ │ │ │ │ │ │ │ │ └── Readme.md
│ │ │ │ │ │ │ │ ├── package.json
│ │ │ │ │ │ │ │ └── Readme.md
│ │ │ │ │ │ │ ├── package.json
│ │ │ │ │ │ │ └── test.js
│ │ │ │ │ │ ├── ws
│ │ │ │ │ │ │ ├── bench
│ │ │ │ │ │ │ │ ├── parser.benchmark.js
│ │ │ │ │ │ │ │ ├── sender.benchmark.js
│ │ │ │ │ │ │ │ ├── speed.js
│ │ │ │ │ │ │ │ └── util.js
│ │ │ │ │ │ │ ├── bin
│ │ │ │ │ │ │ │ └── wscat
│ │ │ │ │ │ │ ├── binding.gyp
│ │ │ │ │ │ │ ├── build
│ │ │ │ │ │ │ │ └── config.gypi
│ │ │ │ │ │ │ ├── builderror.log
│ │ │ │ │ │ │ ├── doc
│ │ │ │ │ │ │ │ └── ws.md
│ │ │ │ │ │ │ ├── examples
│ │ │ │ │ │ │ │ ├── fileapi
│ │ │ │ │ │ │ │ │ ├── package.json
│ │ │ │ │ │ │ │ │ ├── public
│ │ │ │ │ │ │ │ │ │ ├── app.js
│ │ │ │ │ │ │ │ │ │ ├── index.html
│ │ │ │ │ │ │ │ │ │ └── uploader.js
│ │ │ │ │ │ │ │ │ └── server.js
│ │ │ │ │ │ │ │ ├── serverstats
│ │ │ │ │ │ │ │ │ ├── package.json
│ │ │ │ │ │ │ │ │ ├── public
│ │ │ │ │ │ │ │ │ │ └── index.html
│ │ │ │ │ │ │ │ │ └── server.js
│ │ │ │ │ │ │ │ ├── serverstats-express_3
│ │ │ │ │ │ │ │ │ ├── package.json
│ │ │ │ │ │ │ │ │ ├── public
│ │ │ │ │ │ │ │ │ │ └── index.html
│ │ │ │ │ │ │ │ │ └── server.js
│ │ │ │ │ │ │ │ └── ssl.js
│ │ │ │ │ │ │ ├── History.md
│ │ │ │ │ │ │ ├── index.js
│ │ │ │ │ │ │ ├── lib
│ │ │ │ │ │ │ │ ├── browser.js
│ │ │ │ │ │ │ │ ├── BufferPool.js
│ │ │ │ │ │ │ │ ├── BufferUtil.fallback.js
│ │ │ │ │ │ │ │ ├── BufferUtil.js
│ │ │ │ │ │ │ │ ├── ErrorCodes.js
│ │ │ │ │ │ │ │ ├── Receiver.hixie.js
│ │ │ │ │ │ │ │ ├── Receiver.js
│ │ │ │ │ │ │ │ ├── Sender.hixie.js
│ │ │ │ │ │ │ │ ├── Sender.js
│ │ │ │ │ │ │ │ ├── Validation.fallback.js
│ │ │ │ │ │ │ │ ├── Validation.js
│ │ │ │ │ │ │ │ ├── WebSocket.js
│ │ │ │ │ │ │ │ └── WebSocketServer.js
│ │ │ │ │ │ │ ├── Makefile
│ │ │ │ │ │ │ ├── node_modules
│ │ │ │ │ │ │ │ ├── commander
│ │ │ │ │ │ │ │ │ ├── History.md
│ │ │ │ │ │ │ │ │ ├── index.js
│ │ │ │ │ │ │ │ │ ├── lib
│ │ │ │ │ │ │ │ │ │ └── commander.js
│ │ │ │ │ │ │ │ │ ├── Makefile
│ │ │ │ │ │ │ │ │ ├── package.json
│ │ │ │ │ │ │ │ │ └── Readme.md
│ │ │ │ │ │ │ │ ├── nan
│ │ │ │ │ │ │ │ │ ├── LICENSE
│ │ │ │ │ │ │ │ │ ├── nan.h
│ │ │ │ │ │ │ │ │ ├── package.json
│ │ │ │ │ │ │ │ │ └── README.md
│ │ │ │ │ │ │ │ ├── options
│ │ │ │ │ │ │ │ │ ├── lib
│ │ │ │ │ │ │ │ │ │ └── options.js
│ │ │ │ │ │ │ │ │ ├── Makefile
│ │ │ │ │ │ │ │ │ ├── package.json
│ │ │ │ │ │ │ │ │ └── README.md
│ │ │ │ │ │ │ │ └── tinycolor
│ │ │ │ │ │ │ │ ├── example.js
│ │ │ │ │ │ │ │ ├── package.json
│ │ │ │ │ │ │ │ ├── README.md
│ │ │ │ │ │ │ │ └── tinycolor.js
│ │ │ │ │ │ │ ├── package.json
│ │ │ │ │ │ │ ├── README.md
│ │ │ │ │ │ │ ├── src
│ │ │ │ │ │ │ │ ├── bufferutil.cc
│ │ │ │ │ │ │ │ └── validation.cc
│ │ │ │ │ │ │ └── test
│ │ │ │ │ │ │ ├── autobahn.js
│ │ │ │ │ │ │ ├── autobahn-server.js
│ │ │ │ │ │ │ ├── BufferPool.test.js
│ │ │ │ │ │ │ ├── fixtures
│ │ │ │ │ │ │ │ ├── agent1-cert.pem
│ │ │ │ │ │ │ │ ├── agent1-key.pem
│ │ │ │ │ │ │ │ ├── ca1-cert.pem
│ │ │ │ │ │ │ │ ├── ca1-key.pem
│ │ │ │ │ │ │ │ ├── certificate.pem
│ │ │ │ │ │ │ │ ├── key.pem
│ │ │ │ │ │ │ │ ├── request.pem
│ │ │ │ │ │ │ │ └── textfile
│ │ │ │ │ │ │ ├── hybi-common.js
│ │ │ │ │ │ │ ├── Receiver.hixie.test.js
│ │ │ │ │ │ │ ├── Receiver.test.js
│ │ │ │ │ │ │ ├── Sender.hixie.test.js
│ │ │ │ │ │ │ ├── Sender.test.js
│ │ │ │ │ │ │ ├── testserver.js
│ │ │ │ │ │ │ ├── Validation.test.js
│ │ │ │ │ │ │ ├── WebSocket.integration.js
│ │ │ │ │ │ │ ├── WebSocketServer.test.js
│ │ │ │ │ │ │ └── WebSocket.test.js
│ │ │ │ │ │ └── xmlhttprequest
│ │ │ │ │ │ ├── autotest.watchr
│ │ │ │ │ │ ├── example
│ │ │ │ │ │ │ └── demo.js
│ │ │ │ │ │ ├── lib
│ │ │ │ │ │ │ └── XMLHttpRequest.js
│ │ │ │ │ │ ├── LICENSE
│ │ │ │ │ │ ├── package.json
│ │ │ │ │ │ ├── README.md
│ │ │ │ │ │ └── tests
│ │ │ │ │ │ ├── test-constants.js
│ │ │ │ │ │ ├── testdata.txt
│ │ │ │ │ │ ├── test-events.js
│ │ │ │ │ │ ├── test-exceptions.js
│ │ │ │ │ │ ├── test-headers.js
│ │ │ │ │ │ ├── test-redirect-302.js
│ │ │ │ │ │ ├── test-redirect-303.js
│ │ │ │ │ │ ├── test-redirect-307.js
│ │ │ │ │ │ ├── test-request-methods.js
│ │ │ │ │ │ └── test-request-protocols.js
│ │ │ │ │ ├── package.json
│ │ │ │ │ └── README.md
│ │ │ │ ├── has-binary
│ │ │ │ │ ├── fixtures
│ │ │ │ │ │ └── big.json
│ │ │ │ │ ├── History.md
│ │ │ │ │ ├── index.js
│ │ │ │ │ ├── LICENSE
│ │ │ │ │ ├── Makefile
│ │ │ │ │ ├── node_modules
│ │ │ │ │ │ └── isarray
│ │ │ │ │ │ ├── build
│ │ │ │ │ │ │ └── build.js
│ │ │ │ │ │ ├── component.json
│ │ │ │ │ │ ├── index.js
│ │ │ │ │ │ ├── package.json
│ │ │ │ │ │ └── README.md
│ │ │ │ │ ├── package.json
│ │ │ │ │ ├── README.md
│ │ │ │ │ └── test.js
│ │ │ │ ├── indexof
│ │ │ │ │ ├── component.json
│ │ │ │ │ ├── index.js
│ │ │ │ │ ├── Makefile
│ │ │ │ │ ├── package.json
│ │ │ │ │ └── Readme.md
│ │ │ │ ├── object-component
│ │ │ │ │ ├── component.json
│ │ │ │ │ ├── History.md
│ │ │ │ │ ├── index.js
│ │ │ │ │ ├── Makefile
│ │ │ │ │ ├── package.json
│ │ │ │ │ ├── Readme.md
│ │ │ │ │ └── test
│ │ │ │ │ └── object.js
│ │ │ │ ├── parseuri
│ │ │ │ │ ├── History.md
│ │ │ │ │ ├── index.js
│ │ │ │ │ ├── Makefile
│ │ │ │ │ ├── node_modules
│ │ │ │ │ │ └── better-assert
│ │ │ │ │ │ ├── example.js
│ │ │ │ │ │ ├── History.md
│ │ │ │ │ │ ├── index.js
│ │ │ │ │ │ ├── Makefile
│ │ │ │ │ │ ├── node_modules
│ │ │ │ │ │ │ └── callsite
│ │ │ │ │ │ │ ├── History.md
│ │ │ │ │ │ │ ├── index.js
│ │ │ │ │ │ │ ├── Makefile
│ │ │ │ │ │ │ ├── package.json
│ │ │ │ │ │ │ └── Readme.md
│ │ │ │ │ │ ├── package.json
│ │ │ │ │ │ └── Readme.md
│ │ │ │ │ ├── package.json
│ │ │ │ │ └── test.js
│ │ │ │ └── to-array
│ │ │ │ ├── index.js
│ │ │ │ ├── LICENCE
│ │ │ │ ├── package.json
│ │ │ │ └── README.md
│ │ │ ├── package.json
│ │ │ ├── README.md
│ │ │ └── socket.io.js
│ │ └── socket.io-parser
│ │ ├── bench
│ │ │ ├── bench.js
│ │ │ └── index.js
│ │ ├── binary.js
│ │ ├── History.md
│ │ ├── index.js
│ │ ├── is-buffer.js
│ │ ├── Makefile
│ │ ├── node_modules
│ │ │ ├── benchmark
│ │ │ │ ├── benchmark.js
│ │ │ │ ├── doc
│ │ │ │ │ └── README.md
│ │ │ │ ├── LICENSE.txt
│ │ │ │ ├── package.json
│ │ │ │ ├── README.md
│ │ │ │ └── test
│ │ │ │ ├── run-test.sh
│ │ │ │ └── test.js
│ │ │ ├── component-emitter
│ │ │ │ ├── bower.json
│ │ │ │ ├── component.json
│ │ │ │ ├── History.md
│ │ │ │ ├── index.js
│ │ │ │ ├── Makefile
│ │ │ │ ├── package.json
│ │ │ │ └── Readme.md
│ │ │ ├── isarray
│ │ │ │ ├── build
│ │ │ │ │ └── build.js
│ │ │ │ ├── component.json
│ │ │ │ ├── index.js
│ │ │ │ ├── package.json
│ │ │ │ └── README.md
│ │ │ └── json3
│ │ │ ├── coverage
│ │ │ │ ├── coverage.json
│ │ │ │ ├── lcov.info
│ │ │ │ └── lcov-report
│ │ │ │ ├── lib
│ │ │ │ │ └── json3.js.html
│ │ │ │ ├── prettify.css
│ │ │ │ └── prettify.js
│ │ │ ├── lib
│ │ │ │ ├── json3.js
│ │ │ │ └── json3.min.js
│ │ │ ├── LICENSE
│ │ │ ├── package.json
│ │ │ └── README.md
│ │ ├── package.json
│ │ └── Readme.md
│ ├── package.json
│ └── Readme.md
├── package.json
└── server.js
204 directories, 646 files
标签:
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论