2017-06-17 150 views
0

背景檢索的IP地址與RKA IP地址的中間件

我創建一個REST API與我的移動應用程序的工作。爲了合法性目的,我必須記錄通過IP地址向服務器發出的任何請求。

我知道人們可以欺騙知識產權,如果他們想,但這不是一個問題。有一個用於安全的API密鑰,這只是CYA的預防措施。

使用中間件Slim 3 suggest here值始終是NULL我正在測試這從我的本地主機(如果這有所作爲,但我不知道它爲什麼會)。

問題

當我打GET請求終點,我嘗試捕捉IP它總是NULL

use \Psr\Http\Message\ServerRequestInterface as Request; 
use \Psr\Http\Message\ResponseInterface as Response; 

require '../vendor/autoload.php'; 

    $app->get('/api/v1/customer', function (Request $request, Response $response) { 
     $requestIP = $request->getAttribute('ip_address'); 
     var_dump($requestIP); 
     echo $requestIP; 
     echo 'CUSOTMERS!'; 

     return $response; 
    }); 

$app->run(); 

輸出

NULL CUSOTMERS! 

問題

什麼是使用此捕獲來自該請求的IP address有道0 in SlimFrameWork 3

+0

你確實在某處添加了中間件嗎?它不在上面的示例代碼中顯示。 –

+0

@MikaTuupola是的,謝謝麥克。如果您需要傳遞可接受IP的參數,我的印象是這條線是適用的。我不知道你可以不帶參數地稱它。現在都在工作。 – wuno

回答

1

你試過類似的東西嗎?

$ requestIP = $ request-> getServerParam('REMOTE_ADDR');