# super-socket-proxy

> a socket proxy for node

Latest version **0.1.0** (published 2017-04-12) · MIT license · 0 weekly downloads

## Install

```sh
npm install super-socket-proxy
pnpm add super-socket-proxy
yarn add super-socket-proxy
bun add super-socket-proxy
```

Provides the command `scktp`.

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support; pre 1.0.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.1.0 |
| Published | 2017-04-12 |
| First published | 2017-04-12 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Node | >=6.1.0 |
| Dependencies | 1 |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Author | Yuanwen |
| Maintainers | yuanwen |
| Keywords | socket, proxy |

## Links

- npm: https://www.npmjs.com/package/super-socket-proxy
- Repository: https://github.com/wenshin/socket-proxy
- Homepage: https://github.com/wenshin/socket-proxy#readme
- Issues: https://github.com/wenshin/socket-proxy/issues
- npm.io page: https://npm.io/package/super-socket-proxy

## Dependencies (1)

- [commander](https://npm.io/package/commander.md) ^2.9.0

## Alternatives

- [@opentelemetry/exporter-zipkin](https://npm.io/package/@opentelemetry/exporter-zipkin.md) — 14.8M weekly downloads
- [pusher-js](https://npm.io/package/pusher-js.md) — 2.0M weekly downloads
- [browserify](https://npm.io/package/browserify.md) — 1.7M weekly downloads
- [sqs-consumer](https://npm.io/package/sqs-consumer.md) — 1.7M weekly downloads
- [@sanity/eventsource](https://npm.io/package/@sanity/eventsource.md) — 930.8K weekly downloads

## Recent versions

- 0.1.0 (latest) — 2017-04-12

## README

# super-socket-proxy

a socket proxy server and client for node.

## feature

# Install

    npm i --save super-socket-proxy
    npm i -g super-socket-proxy

# CLI Usage

```
Usage: scktp [options] [host:port]

Options:

    -h, --help                output usage information
    -V, --version             output the version number
    -s, --server              run as a proxy server
    -o, --host   [host]       local server host, default is localhost
    -r, --port   [port]       local server port
    -t, --target [host:port]  the target service address like 10.1.1.10:8000
    -p, --proxy  [host:port]  give one proxy service like 10.1.1.1:8887
    -c, --config [json]       a json file for client server
```

# NODE Usage

## SocketProxy.createServer(options)
create a server side proxy server.

* `options`: [Object], An object which is optional.
* `options.host`: [String], Host the server will run with, default is localhost.
* `options.port`: [Number], Port the server run.
* `@return`: [Socket]

```javascript
// proxy server
const SocketProxy = require('super-socket-proxy');

SocketProxy
    .createServer()
    .listen(8888);

const targetHost = '10.1.1.10';
const targetPort = 8888;
const proxyHost = '10.1.1.1';
const proxyPort = 8887;
// proxy client server
// create a local server 'localhost:8888' proxy to
// target server '10.1.1.10:8888'
// through the proxy server '10.1.1.1:8887'
SocketProxy
    .createClientServer({
        targetHost,
        targetPort,
        proxyHost,
        proxyPort
    })
    .listen(8888);

// connect to proxy server directly
SocketProxy.connect({
    host: targetHost,
    port: targetPort,
    proxyHost,
    proxyPort
  }, (sckt) => {
    // pipe data to downstream
  });
```

# Release Note

v0.1.0 2017-04-11

    * first version

---
_Source: https://npm.io/package/super-socket-proxy · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
