如何从另一个网站和 ip 、位置和国家代码中提取数据

How to extract data from another website and ip , location , and country code

我知道一个网站,它提供了我们的 IP、位置和国家/地区。我不知道如何提取数据并将其显示在我们的网站上。

来源网站: https://geoip.nekudo.com/api/

它输出这样的数据:{"city":false,"country":{"name":"India","code":"IN"},"location":{"accuracy_radius":200,"latitude":13.0833,"longitude":80.2833,"time_zone":"Asia/Kolkata"},"ip":"27.62.5.1"}

现在我需要在我的网站上获取 ip、代码、国家名称。

我们可以使用PHP或JSON,但我需要在网站上显示数据。我知道这是一个简单的问题,但我已经搜索了很长时间,但我仍然无法找出正确的方法来报废和显示结果。

提前致谢。

您可以在 javascript 文件中进行 jQuery AJAX 调用以获取该数据并将其存储在您的 json 中,然后呈现 json 到您的页面,如下所示:

$.ajax({
  url: "https://geoip.nekudo.com/api/",
  method: "GET",
  success: function(response) {
    $('.some-selector').html(response.ip)
  }
});

和你的HTML:

<div class="some-selector"></div>

这会将您的 IP 地址添加到 div,作为示例。

假设您向 https://geoip.nekudo.com/api/ 和 returns 发出请求一个变量 'data' 获取ip、code和country name

data.ip
data.country.code
data.country.name

在 php 文件中只需获取文件内容并回显所需字段

<p><?php 
        $json = json_decode(file_get_contents("https://geoip.nekudo.com/api/"));
        echo $json->ip;
    ?></p>
    <p><?php
                echo $json->country->code;
        ?></p>
    <p><?php
                echo $json->country->name;
        ?></p>

对于没有 html 标签的 php 文件,将 https 替换为 http

    <?php

$json = json_decode(file_get_contents("http://geoip.nekudo.com/api/"));
echo '<p>' . $json->ip . '</p>';
echo '<p>' . $json->country->code . '</p>';
echo '<p>' . $json->country->name . '</p>';

结果

<p>77.246.49.14</p><p>ZW</p><p>Zimbabwe</p>