2016-01-20 45 views
0

这就是我的目的,我有关于商业API和白色标签的详细信息。掩蔽API端点的网关

之后,我想将其转售给我的网站的用户。

是什么力量让一个API重定向到另一个具有相同的请求,参数,凭证和回响应的最佳途径。

有网上服务吗? 或者使用Java spring或php的技术示例?

EXAMPLE : 

1. POST, to http://www.commercialapi.com/product/save 
{'name': 'customerName', 'nick': 'customerNick'} 

2. DELETE, to http://www.commercialapi.com/product/delete 
{'id': 'customerId'} 

transform to : 

1. POST, to http://www.myapi.com/product/save 
{'name': 'customerName', 'nick': 'customerNick'} 

2. DELETE, to http://www.myapi.com/product/delete 
{'id': 'customerId'} 

在此先感谢。

回答

2

我认为Nginx是这个任务的很好的解决方案。您需要在您的域上设置Nginx代理。

尝试使用你的任务nginx reverse proxy

一个例子的Nginx服务器将是:

server { 
    listen 80; 
    server_name www.myapi.com; 

    location/{ 
     proxy_pass  http://www.commercialapi.com; 
     proxy_redirect http://www.commercialapi.com/ /; 
     proxy_read_timeout 60s; 

     # Your can customize headers as well. 
     proxy_set_header   X-Real-IP  $remote_addr; 
     proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for; 
    } 
} 
+0

同类型的同HAProxy的解决方案。您应该考虑将您的客户ID作为标题注入下游服务。 – fehguy

+0

感谢您的帮助。 我会试试看,看起来很清楚。 我认为第一个网址应该是: proxy_pass http://www.myapi.com。 这可能与Apache? –

+0

达西,第一个网址应该是http://www.commercialapi.com,我相信。 Apache仅仅作为一个代理使用太过分了...... Nginx - 是代理的良好实践,并允许您使用Lua脚本(指令access_by_lua)为代理创建访问控制逻辑。 –