使用rka-ip-address-middleware检索SlimFramework 3中的IP地址

时间:2017-06-17 17:16:33

标签: php slim slim-3

背景

我正在创建REST API以使用我的移动应用。为了合法性,我必须保留通过IP地址向服务器发出的任何请求的记录。

我知道人们可以根据需要欺骗IP,但这不是问题。有一个安全的API密钥,这只是一个CYA预防措施。

使用中间件Slim 3 suggest here,值始终是NULL我正在从我的localhost测试这个(如果这有所不同,但我不知道为什么会这样)。

问题

当我点击获取请求端点并尝试捕获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

中的rka-ip-address-middleware middleware从请求中捕获SlimFrameWork 3的正确方法是什么?

1 个答案:

答案 0 :(得分:1)

你尝试过这样的事吗?

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