本页的 endpoint 仅适用于网站应用 —— 即带有 web 域名的应用。对非网站应用调用它们会失败。
自定义域名
api.SetApplicationCustomDomain(appID, domain) 设置绑定到网站的自定义域名。
DNS 记录
绑定自定义域名后,你需要在域名注册商处配置 DNS。api.GetApplicationDNS(appID) 以 []squarecloud.DNSRecord 返回需要创建的记录。
| 字段 | 类型 | 说明 |
|---|---|---|
Type | string | "txt" 或 "cname" —— TXT 记录覆盖所有权和 SSL 验证;CNAME 承载流量并始终指向 cname.squareweb.app |
Name | string | 要创建的记录名称 |
Value | string | 记录值 |
Status | string | 验证状态:"pending"、"pending_validation" 或 "active" |
分析
api.GetApplicationAnalytics(appID, start, end) 以 squarecloud.NetworkAnalytics 返回给定时间窗口内聚合的边缘分析数据。时间窗口是必需的,最大保留期为 7 天。
Visits、Countries、Devices、OS、Browsers、Protocols、Methods、Paths、Referers、Providers)和整个窗口的聚合桶(IPs、StatusCodes、Bots、ContentTypes)。
对于完全早于应用创建时间的窗口,API 返回一个空对象 —— 响应中的每个切片都是
nil。索引前请先检查长度。下钻筛选
除时间窗口外,该 endpoint 还接受作为查询参数的可选筛选条件 —— 使用rest.WithQueryParam 传入。每个筛选条件会同时收窄响应中的每一项细分数据:
| 筛选条件 | 备注 |
|---|---|
country | 2 位国家代码,例如 "BR" |
ip | 精确 IP 匹配 |
path | 前缀匹配,例如 "/api" |
status | HTTP 状态码,例如 "404" |
os | 操作系统 |
browser | 浏览器名称 |
protocol | 请求协议 |
referer | 无 referer 的请求使用 "Direct" |
provider | 网络提供商,例如 "GOOGLE (15169)"(ASN) |
content_type | 未分类的内容类型使用 "Unknown" |
bot | 正常(非机器人)流量使用 "Unverified" |
错误追踪
api.GetApplicationNetworkErrors(appID, start, end) 返回边缘错误的细分数据。默认只包含 5xx 错误 —— 添加 include_4xx=true 以包含 4xx。
逐请求日志
api.GetApplicationNetworkLogs(appID, start, end) 返回边缘的逐请求日志。
逐请求日志需要 Pro 套餐或更高级别。
延迟百分位
api.GetApplicationNetworkPerformance(appID, start, end) 返回边缘层和源站层的 p50 / p95 / p99 延迟。
性能指标需要 Pro 套餐或更高级别。
清除边缘缓存
api.PurgeApplicationCache(appID) 使应用域名的整个边缘缓存失效。
账户级域名与负载均衡器
以下两个方法作用于账户中的所有应用,而非单个网站。列出所有域名
api.GetApplicationDomains() 以 []squarecloud.AppDomain 返回账户所有应用中配置的每一个域名。自定义域名排在前面;没有 web 域名的应用会被省略。
负载均衡器
api.GetLoadBalancers() 将共享同一自定义域名的应用分组,返回一个 squarecloud.LoadBalancers。
Limit 是账户套餐允许共享同一域名的最大应用数量:2(Standard)、5(Pro)、10(Enterprise)。
