获取时区

获取请求 IP 的时区信息和国家信息。如果请求体中的 ip 字段没有值,则返回调用此 API 的 IP 的时区和国家信息。

  • 请求 URL
常用网址 https://timezone.qpyou.cn/public/api/getTimezone
分布式环境网址 https://timezone.globalwithhive.com/public/api/getTimezone
沙盒网址 https://sandbox-timezone.qpyou.cn/public/api/getTimezone
HTTP 方法 POST
内容类型 text/html
数据格式 JSON
Note

时区 API 在发生故障或网络不佳的情况下具有分布式处理环境。如果由于故障或网络问题导致您游戏服务器设置的通信超时被超过,请使用分布式环境 URL 调用此 API。

  • 请求体
字段名称 描述 必需
ip 如果请求的IP(IPv4或IPv6)为空,则通过API实现客户端的IP获取时区和国家数据。 N
  • 响应
字段名称 描述 必需
result_code 结果代码。0=成功 整数
result_msg 结果消息 字符串
timezone 对象类型的时区
参考以下 时区对象
对象
country_diff
  • true: 使用的时区的国家代码与 ip 基于地理位置的国家代码不相等
  • false: 使用的时区的国家代码与 ip 基于地理位置的国家代码相等 越南北部(VN)使用亚洲/曼谷时区,南部使用亚洲/胡志明市时区。顺便提一下,亚洲/曼谷时区的国家代码是泰国(TH)。基于 IP 的地理位置,越南北部的国家代码(VN)与越南北部使用的时区的国家代码(TH)不同。
布尔值
  • 时区对象
字段名称 描述 类型
zone_id 时区数据库提供的位置标识符 字符串
country_code 基于 ISO 3166-1 alpha-2 的国家代码 字符串
zone_name 本地名称 字符串
country_name 国家名称 字符串
abbreviation 各国标准时间的缩写 字符串
gmt_offset 时差(单位:秒) 字符串
dst 夏令时的使用 字符串
  • 请求示例
//IPv4
{
    "ip" : "127.0.0.1"
}
//IPv6
{
    "ip" : "::ffff:dc46:52e7" or "0:0:0:0:0:ffff:dc46:52e7" or "0000:0000:0000:0000:0000:ffff:dc46:52e7"
}
  • 响应示例
//Example 1
{
     "result_code": 0,
     "result_message": "Success",
     "timezone": {
         "zone_id": "361",
         "country_code": "VN", //location-based country code
         "zone_name": "Asia/Bangkok", //name of timezone
         "country_name": "Vietnam",
         "abbreviation": "ICT",
         "gmt_offset": "25200",
         "dst": "0"
     },
     "country_diff": true //In the case of "Asia/Bangkok", the country code is TH, and the country code from IP geolocation is VN. Set to true because they are different to each other.
}

//Example 2
{
     "result_code": 0,
     "result_message": "Success",
     "timezone": {
         "zone_id": "212",
         "country_code": "KR", //location-based country code
         "zone_name": "Asia/Seoul", // Name of time zone
         "country_name": "Korea, Republic of",
         "abbreviation": "KST",
         "gmt_offset": "32400",
         "dst": "0"
     },
     "country_diff": false // In the case of "Asia/Seoul", the country code is KR and the country code from the IP geolocation is also KR, so set to false.
}
Note

当请求 IP 的时区未被识别时,成功将作为结果值返回,而 "UNKNOWN" 将作为 country_code 值返回。

  • 如果无法识别时区的响应示例
{
    "result_code": 0,
    "result_message": "Success",
    "timezone": {
        "zone_id": null,
        "country_code": "UNKNOWN",
        "zone_name": null,
        "country_name": null,
        "abbreviation": null,
        "gmt_offset": null,
        "dst": null
    },
    "country_diff": false
}