如何使用Apility.io API密钥?

时间:2018-12-24 17:45:37

标签: php api

我是所有php api的新手,所以我已经开始使用api进行项目,但是每当我使用api时,它都会给我输出“ bool(false)”,我不知道为什么,有些帮助会不胜感激!抱歉,如果我的问题太la脚了,请告诉我在网址中应该在哪里使用api密钥!

<?php
  include 'includes/header.php';
  $ip = $_SERVER['REMOTE_ADDR'];
  $ip_reputation = file_get_contents("https://api.apility.net/v2.0/ip/".$ip."");
  var_dump($ip_reputation);
?>
<?php 
  include 'includes/footer.php';
?>

1 个答案:

答案 0 :(得分:0)

您需要在API上进行身份验证。我会向您保证,他们的文档尚不清楚,您只能在示例中看到它。

但是,这意味着您的代码将稍长一点。

<?php
include 'includes/header.php'

$api_key = 'ReplaceThisWithYourAPICode';

$ip = $_SERVER['REMOTE_ADDR'];
// Set our headers
$opts = [
    "http" => [
        "method" => "GET",
        "header" => "X-Auth-Token: $api_key"
    ]
];

$context = stream_context_create($opts);
$file = file_get_contents("https://api.apility.net/v2.0/ip/".$ip, false, $context);
var_dump($file);

附加代码为file_get_contents提供了stream context,其中包含请求标头和要使用的HTTP动词(此处为GET)。

如果不这样做,无论您采取什么措施,都将使您进入其“匿名”计划。我相对确定您现在没有响应正文,这说明了file_get_contents返回false的原因(这是一个错误)。