# swtc-proxy API服务 - 代理至井通节点

# 在线文档

# 描述

# @swtc/lib使用websocket,兼容性和规模化有一定的问题

# swtc-proxy提供REST服务,代理到井通节点解决上述问题

# 约定

  1. 安全第一, 确保密钥不出本机
  2. 尽量保持数据结构 和 @swtc/lib 对应一致
  3. 所有 API 应答均为 json object, 包括数据和错误
  4. 尽量支持可选参数, 几乎所有@swtc/lib支持的参数都可以通过 query 获得支持
  5. 集成至 @swtc/transaction@swtc/api
  6. 精简为主, 面向所有用户。 提供缺省配置和 docker image
  7. swagger-ui 标准文档

# 使用

# kubernetes (通过环境变量设置上游/调试/基于 IP 的访问限制)

  1. kubectl create -f https://raw.githubusercontent.com/swtcca/swtcproxy/master/kubernetes.yaml

# docker (通过环境变量设置上游/调试/基于 IP 的访问限制)

  1. docker run --rm -e UPSTREAM=wss://s.jingtum.com:5020 -e DEBUG=true -e RATE=100 -d -p 5080:5080 lospringliu/swtcproxy

# 源代码

  1. git clone https://github.com/swtcca/swtcproxy.git
  2. cd swtcproxy
  3. npm install
  4. npm run test
  5. env UPSTREAM=wss://s.jingtum.com:5020 RATE=100 npm run start
  6. 本地文档: http://localhost:5080/swagger
    • 相应修改 static/swagger.jsonserver.url
  • 配合@swtc/api使用,提供和@swtc/lib相似的接口
    • 避免 websocket
    • 完整接口

# 定制

# 源代码

  1. git clone https://github.com/swtcca/swtclib.git
  2. cd swtclib/packages/swtc-proxy
  3. npm install
  4. npm run test
  5. npm run start
  6. 本地文档: http://localhost:5080/swagger
    • 相应修改 static/swagger.jsonserver.url

# 修改 start.js

  • 配置
  • 中间件
  • 后端
  • 日志
  • 扩展

# 修改源文件 tssrc/