无法从 maxmind 返回对象中获取键值
Posted
技术标签:
【中文标题】无法从 maxmind 返回对象中获取键值【英文标题】:Can not get key value from maxmind return object 【发布时间】:2020-09-27 09:54:24 【问题描述】:我正在使用 maxmind 网络服务来获取用户数据:
这是输出数据的 php 代码。
现在你可以看到我已经注释掉了 ip_address、user_type、is_anonymous、is_anonymous_proxy、is_anonymous_***、is_tor_exit_node key 因为我无法使用这些键获得价值?
你能告诉我为什么吗?
$client = new Client( client number , 'my license keyu');
// Call insights method to get full details
$record = $client->insights( '103.82.11.26' );
//$result['ipAddress'] = $record->traits->ip_address;
$result['country'] = $record->country->name;
$result['city'] = $record->city->name;
//$result['userType'] = $record->traits->user_type;
$result['isp'] = $record->traits->isp;
$result['organization'] = $record->traits->organization;
$result['network'] = $record->traits->network;
//$result['isAanonymous'] = $record->traits->is_anonymous;
//$result['isAnonymous_proxy'] = $record->traits->is_anonymous_proxy;
//$result['isAnonymous_***'] = $record->traits->is_anonymous_***;
//$result['isTorExitNode'] = $record->traits->is_tor_exit_node;
$result['referer'] = $_SERVER['HTTP_REFERER'];
$result['userAgent'] = $_SERVER['HTTP_USER_AGENT'];
如果我这样做了
print_r( $record );
我可以看到包含所有数据的完整对象。
更新
返回的实际对象https://codeshare.io/ad3nVy
【问题讨论】:
如果你可以分享 print($record) .. 只要钥匙就足够了 @SandeepKothari 好的。我正在分享它。 @SandeepKothari 我已经更新了我的问题或查看codeshare.io/ad3nVy 【参考方案1】:您需要根据这些键使用名称:
[0] => autonomousSystemNumber
[1] => autonomousSystemOrganization
[2] => connectionType
[3] => domain
[4] => ipAddress
[5] => isAnonymous
[6] => isAnonymousProxy
[7] => isAnonymous***
[8] => isHostingProvider
[9] => isLegitimateProxy
[10] => isp
[11] => isPublicProxy
[12] => isSatelliteProvider
[13] => isTorExitNode
[14] => network
[15] => organization
[16] => staticIpScore
[17] => userCount
[18] => userType
)
所以,基本上例如:
$record->traits->ipAddress
【讨论】:
你说得对,但你怎么知道我需要使用这些键? 通过响应...实际上在响应中,如果您看到具有特征键的记录元素具有您需要的所有属性...而且,看起来共享响应已更改..如果您可以检查新的响应,您可以看到密钥以上是关于无法从 maxmind 返回对象中获取键值的主要内容,如果未能解决你的问题,请参考以下文章