# 策展 · X (Twitter) 🔥🔥

> 作者：Cloudflare Changelog (@CFchangelog) · 平台：X (Twitter) · 日期：2026-04-27

> 原始來源：https://x.com/CFchangelog/status/2048780731057328407

## 中文摘要

Cloudflare 5xx錯誤回應升級為結構化JSON與Markdown格式。

Cloudflare於2026年4月27日宣布，其產生的5xx錯誤回應現支援結構化JSON與Markdown格式，適用於Agent請求，遵循RFC 9457（HTTP API問題細節）標準，並在可重試錯誤中加入Retry-After標頭。此更新讓API整合除錯更簡便，涵蓋Cloudflare無法存取或理解來源伺服器時的自家錯誤。

**錯誤涵蓋範圍**  
Cloudflare自家產生的10個5xx錯誤碼（500、502、504、520-526）現提供結構化回應；來源伺服器產生的5xx錯誤則不受影響，Cloudflare僅透傳原回應。

**錯誤歸責機制**  
透過「error_category」欄位明確指責責任歸屬：  
- origin（502、504、520-524）：來源伺服器責任，暫時性錯誤，建議依retry_after背壓重試。  
- cloudflare（500）：Cloudflare自身問題，非網站或請求因素，短暫重試即可。  
- ssl（525、526）：來源TLS設定錯誤，不可重試。

**Retry-After標頭**  
可重試錯誤碼（500、502、504、520-524）包含Retry-After HTTP標頭，對應回應本體的retry_after欄位；不可重試碼（525、526）不含此標頭。

**內容協商行為**  
依Accept請求標頭決定回應格式：  
- Accept: application/json → JSON (application/json)。  
- Accept: application/problem+json → JSON (application/problem+json)。  
- Accept: application/json, text/markdown;q=0.9 → JSON。  
- Accept: text/markdown → Markdown。  
- Accept: text/markdown, application/json → Markdown（q值相等時，優先列先者）。  
- Accept: */* → HTML（預設）。

**可用性與啟用**  
即時適用所有zone與所有方案。測試範例：  
- 獲取522錯誤JSON：`curl -s --compressed -H "Accept: application/json" -A "TestAgent/1.0" -H "Accept-Encoding: gzip, deflate" "<YOUR_DOMAIN>/cdn-cgi/error/522" | jq .`  
- 檢查521錯誤的Retry-After標頭：`curl -s --compressed -D - -o /dev/null -H "Accept: application/json" -A "TestAgent/1.0" -H "Accept-Encoding: gzip, deflate" "<YOUR_DOMAIN>/cdn-cgi/error/521" | grep -i retry-after`。

## 標籤

功能更新, Agent, Cloudflare
