本地开发——TCP Proxy 解决 API 必须绑定 IP 白名单才能访问的问题

本次对接一个票务系统的时候,对方的 API 须要加白名单后才能够访问,我当时就提出了个问题。php

问:那我在本地怎么调试开发啊?(由于我开发机 IP 是不固定的)html

答:测试环境也要加,要否则怎么开发呢?git

博文源地址 http://blog.phpor.me/tools/2015/11/29/tcp-proxy-for-api-white-list.htmlgithub

想了一下跟他们争确定是争不过的了,那就考虑如何知足他们,想了一下,我有本身的公网服务器 IP,本地测试环境直接请求这台机器,它再把请求转发给相应的 API,这样我无论在哪里均可以开发了。shell

API 那边的 Host 仍是 IP,即 http://x.x.y.z:port/api-route,这样服务端的那里只须要一个 TCP Proxy 就能够了,Google 了一下 tcproxy 这个小巧的很是入眼。api

安装及使用

$ git clone https://github.com/dccmx/tcproxy.git
$ cd tcproxy && make ; echo $?  # 输出 0 表明安装成功
$ nohup ./src/tcproxy "0.0.0.0:19999 -> rr{x.x.y.z:port}" &

代码里面的 Host 直接换成我本身的 ip:19999 端口就能够访问了。服务器

使用这个有个注意的点,就是你的代码要有环境之分,不一样的环境应能够自定义配置,参考 12 Factor 的配置tcp

相关文章
相关标签/搜索