2016-01-20 36 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)爲代理創建訪問控制邏輯。 –