2

我正在使用 Kango 框架编写浏览器扩展。

作为其功能的一部分,它必须知道用户所在的位置。我已经用 API 覆盖了那部分,但是所述 API 需要一个 IP 地址作为参数之一。

有没有办法在内部查看它是什么(或上次是什么),或者我是否必须单独调用另一个服务(我想是一个简单的 php 页面)来确定 ip 是什么?

位置建立后,分机将再次拨打电话。我应该对 3 个单独的电话感到厌烦吗?

谢谢。

4

2 回答 2

3

Javascript:

$.ajax({
        type: "POST",
        url: "getIP.php",
        data: "",
        dataType: 'json',
        success: function(ret) {
           alert("ip = " + ret);
        },
        error: function (xhr, ajaxOptions, thrownError) {
            console.error(xhr.responseText);
            console.error(thrownError);
        } 
    });

PHP:

if (isset($_SERVER['HTTP_X_FORWARDED_FOR']))
    $IP = $_SERVER['HTTP_X_FORWARDED_FOR'];
else
    $IP = $_SERVER['REMOTE_ADDR'];
echo json_encode($IP);

旁注:我在这里使用 jQuery,如果您不知道如何使用,请阅读此处的文档:http: //docs.jquery.com/Main_Page

于 2012-05-26T11:04:03.223 回答
1

是的,出于安全原因,您无法通过 Javascript 知道用户的 IP,因此您必须依赖服务器端服务。

于 2012-05-26T10:55:52.270 回答