BigPizzaV3/CodexPlusPlus · error · anyhow::Error

DreamSkin 服务返回 HTTP {}

Error message

DreamSkin 服务返回 HTTP {}

What it means

Raised in download_limited: the DreamSkin community service replied with a non-2xx HTTP status for a catalog/package download, so the response body is discarded and the status code is reported. Indicates a server-side or network-level failure, not a payload problem.

Source

Thrown at crates/codex-plus-core/src/dream_skin_community.rs:400

        .connect_timeout(Duration::from_secs(8))
        .timeout(timeout)
        .build()?)
}

async fn download_limited(
    client: &reqwest::Client,
    url: &str,
    limit: usize,
    expected_content_type: &str,
) -> anyhow::Result<Vec<u8>> {
    let response = client
        .get(url)
        .header(reqwest::header::ACCEPT, expected_content_type)
        .send()
        .await
        .with_context(|| format!("请求失败:{url}"))?;
    if !response.status().is_success() {
        bail!("DreamSkin 服务返回 HTTP {}", response.status());
    }
    let content_type = response
        .headers()
        .get(reqwest::header::CONTENT_TYPE)
        .and_then(|value| value.to_str().ok())
        .and_then(|value| value.split(';').next())
        .map(str::trim)
        .unwrap_or_default();
    if content_type != expected_content_type {
        bail!("DreamSkin 服务返回了不支持的内容类型:{content_type}");
    }
    if response
        .content_length()
        .is_some_and(|length| length == 0 || length > limit as u64)
    {
        bail!("DreamSkin 响应超过大小限制");
    }
    let mut bytes = Vec::new();

View on GitHub (pinned to f2074595a2)

Solutions

  1. Retry the download; check the DreamSkin service status
  2. Verify the request URL is the current official endpoint
  3. Check local network/proxy if 5xx persists
Defensive patterns

Strategy: retry

When it happens

Trigger: Thrown at crates/codex-plus-core/src/dream_skin_community.rs:400 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of BigPizzaV3/CodexPlusPlus@f2074595a2 (2026-08-23). Data as JSON: /api/errors/3d0e4fcd456ab029. Report an issue: GitHub.