跳转到内容
搜索文档

HTTP 请求

最后更新 查看 MarkdownAgent 设置

虽然在 NetFlows 中,我们可以检查到达 Cloudflare 边缘路由器的字节和数据包,但在 HTTP 请求中,我们处于 OSI 模型的上一层。HTTP 请求检查来自最终用户的到达由 Cloudflare CDN 服务的网站的完整 HTTP 请求。

Radar 上的采用和使用情况部分的大多数图表都来自此数据源。

这些端点大致可分为:

  • timeseries:一组指标的时间序列。例如,在查看 IP 版本时,显示 IPv4 时间序列和 IPv6 时间序列。
  • summary:显示在指定时间范围内一组指标的摘要。例如,在该时间段内 IPv4 流量占总 HTTP 流量的百分比。
  • top:按特定指标采用情况排名的主要位置或自治系统(AS)列表。例如,按移动设备流量划分的主要位置(例如哪些位置的移动流量占该位置总流量的百分比更高)。

端点列表

时间序列

示例:按设备类型划分的每小时细分

在此示例中,我们将请求全球范围内按设备类型划分的流量,包括和不包括机器人流量human 系列的参数是 name=human&botClass=LIKELY_HUMAN&dateRange=1d。对于 bot 系列,参数是 name=bot&botClass=LIKELY_AUTOMATED&dateRange=1d

curl "https://api.cloudflare.com/client/v4/radar/http/timeseries/device_type?name=human&botClass=LIKELY_HUMAN&dateRange=1d&name=bot&botClass=LIKELY_AUTOMATED&dateRange=1d&format=json&aggInterval=1h" \
--header "Authorization: Bearer <API_TOKEN>"

以下是缩写的响应:

{
  "success": true,
  "errors": [],
  "result": {
    "human": {
      "timestamps": ["2022-11-03T13:00:00Z", "2022-11-03T14:00:00Z", ".."],
      "mobile": ["52.5532", "52.146628", ".."],
      "desktop": ["47.394791", "47.800731", ".."],
      "other": ["0.052009", "0.052642", ".."]
    },
    "bot": {
      "timestamps": ["2022-11-03T13:00:00Z", "2022-11-03T14:00:00Z", ".."],
      "desktop": ["83.833892", "84.017711", ".."],
      "mobile": ["16.156748", "15.969936", ".."],
      "other": ["0.00936", "0.012353", ".."]
    },
    "meta": {
      "dateRange": {
        "startTime": "2022-11-03T13:00:00Z",
        "endTime": "2022-11-04T13:00:00Z"
      },
      "normalization": "PERCENTAGE"
    }
  }
}

在检查人类生成的流量与机器人生成的流量时,移动设备往往表现得更为显著。

有关更多信息,请参阅获取设备类型时间序列

摘要

示例:按设备类型和人类/机器人流量的整体细分

我们也可以查看相同的信息,请求整个期间的设备类型细分摘要,而不是像上一个示例中的每小时细分。

curl "https://api.cloudflare.com/client/v4/radar/http/summary/device_type?name=human&botClass=LIKELY_HUMAN&dateRange=1d&name=bot&botClass=LIKELY_AUTOMATED&dateRange=1d&format=json&aggInterval=1h" \
--header "Authorization: Bearer <API_TOKEN>"

以下是缩写的响应:

{
  "success": true,
  "errors": [],
  "result": {
		"human": {
			"mobile": "54.967243",
			"desktop": "44.974006",
			"other": "0.058751"
		},
		"bot": {
			"desktop": "83.275452",
			"mobile": "16.707455",
			"other": "0.017093"
		}
  }
}

有关更多信息,请参阅此端点的 API 参考

示例:按 IP 版本和人类/机器人流量细分

在以下示例中,我们将检查全球流量按 IP 版本的细分情况,包括和不包括机器人:

curl "https://api.cloudflare.com/client/v4/radar/http/summary/ip_version?name=human&botClass=LIKELY_HUMAN&dateRange=1d&name=bot&botClass=LIKELY_AUTOMATED&dateRange=1d&format=json&aggInterval=1h" \
--header "Authorization: Bearer <API_TOKEN>"

这将返回以下内容:

{
  "success": true,
  "errors": [],
  "result": {
		"human": {
			"IPv4": "76.213647",
			"IPv6": "23.786353"
		},
		"bot": {
			"IPv4": "91.492032",
			"IPv6": "8.507968"
		}
  }
}

机器人倾向于使用更多的 IPv4 地址。

了解您的 ISP 在 IPv6 采用方面的表现也很有趣。如果您知道您的 ISP 的自治系统号(ASN),则可以使用 asn 参数来查询此信息。有关其他参数,请参阅 API 参考

如果您不知道您的 ISP 的 ASN,您可以使用 Radar 来查找它。

主要

示例:按 IPv6 流量划分的主要位置

在以下示例中,我们将找出哪些位置在过去 28 天内对 IPv6 的采用率更高。

curl "https://api.cloudflare.com/client/v4/radar/http/top/locations/ip_version/IPv6?name=ipv6&botClass=LIKELY_HUMAN&dateRange=28d&format=json&limit=5" \
--header "Authorization: Bearer <API_TOKEN>"
{
  "success": true,
  "errors": [],
  "result": {
		"ipv6": [
			{
				"clientCountryAlpha2": "IN",
				"clientCountryName": "India",
				"value": "50.612747"
			},
			{
				"clientCountryAlpha2": "MY",
				"clientCountryName": "Malaysia",
				"value": "46.233654"
			},
			{
				"clientCountryAlpha2": "UY",
				"clientCountryName": "Uruguay",
				"value": "39.796762"
			},
			{
				"clientCountryAlpha2": "LK",
				"clientCountryName": "Sri Lanka",
				"value": "39.709355"
			},
			{
				"clientCountryAlpha2": "VN",
				"clientCountryName": "Vietnam",
				"value": "39.1514"
			}
		]
  }
}

根据返回的数据,印度在 IPv6 采用方面处于领先地位。

有关更多信息,请参阅此端点的 API 参考

下一步

参阅应用层攻击以了解更多有关已缓解的 HTTP 请求的信息。

这篇文档对您有帮助吗?