mirror of
https://github.com/claude-code-best/claude-code.git
synced 2026-06-21 07:45:52 +00:00
docs: 完善 cloud-artifacts 文档并统一出口域名
- CLAUDE.md 加 cloud-artifacts 到 Workspace Packages 表和新增 HTML Artifact Hosting 段落 - docs.json 注册 cloud-artifacts 到运行模式 group - README 加 Quickstart、架构图(含 Deno Deploy 代理层)、Security Considerations、Troubleshooting - 统一出口域名为 https://cloud-artifacts.claude-code-best.win(wrangler.toml PUBLIC_URL、test.sh 默认 WORKER_URL、所有文档示例) - test.sh expect() 加 [via body] fallback:经 Deno Deploy 代理(status 抹平为 200)时按 body 的 error 字段断言 Co-Authored-By: glm-5.2 <zai-org@claude-code-best.win>
This commit is contained in:
@@ -10,7 +10,7 @@
|
||||
|
||||
set -uo pipefail
|
||||
|
||||
WORKER_URL="${WORKER_URL:-https://cloud-artifacts.claude-code-best.workers.dev}"
|
||||
WORKER_URL="${WORKER_URL:-https://cloud-artifacts.claude-code-best.win}"
|
||||
TOKEN="${TOKEN:-cloud-artifacts}"
|
||||
TMP="$(mktemp -d)"
|
||||
trap 'rm -rf "$TMP"' EXIT
|
||||
@@ -26,17 +26,35 @@ echo '<!doctype html><title>t</title><h1>hello v2 (overwritten)</h1>' > "$TMP/v2
|
||||
yes '<p>x</p>' | head -c 11000000 > "$TMP/big.html"
|
||||
|
||||
pass=0; fail=0
|
||||
# expect: 主断言 status code;如代理把所有 status 抹平为 200 但 body 仍是 error JSON,
|
||||
# 则按 body 中的 error 字段做 fallback 断言(标 [via body])。
|
||||
expect() {
|
||||
local label="$1" want_code="$2" resp="$3" code="$4" body="$5"
|
||||
if [[ "$code" == "$want_code" ]]; then
|
||||
printf "${G}✓ %s -> HTTP %s${D}\n" "$label" "$code"
|
||||
[[ -n "$resp" ]] && printf " body: %s\n" "$body"
|
||||
pass=$((pass+1))
|
||||
else
|
||||
printf "${R}✗ %s -> HTTP %s (expected %s)${D}\n" "$label" "$code" "$want_code"
|
||||
printf " body: %s\n" "$body"
|
||||
fail=$((fail+1))
|
||||
return
|
||||
fi
|
||||
# 代理透传 fallback:HTTP 200 + body 是 {"error":"..."} JSON
|
||||
if [[ "$code" == "200" && "$body" == {\"error\":* ]]; then
|
||||
local want_error=""
|
||||
case "$want_code" in
|
||||
401) want_error="unauthorized" ;;
|
||||
415) want_error="unsupported_media_type" ;;
|
||||
413) want_error="payload_too_large" ;;
|
||||
404) want_error="not_found" ;;
|
||||
400) want_error="invalid_" ;; # invalid_ttl 或 invalid_hash,前缀匹配
|
||||
esac
|
||||
if [[ -z "$want_error" ]] || echo "$body" | grep -q "\"error\":\"$want_error"; then
|
||||
printf "${G}✓ %s -> HTTP 200 [via body] %s${D}\n" "$label" "$body"
|
||||
pass=$((pass+1))
|
||||
return
|
||||
fi
|
||||
fi
|
||||
printf "${R}✗ %s -> HTTP %s (expected %s)${D}\n" "$label" "$code" "$want_code"
|
||||
printf " body: %s\n" "$body"
|
||||
fail=$((fail+1))
|
||||
}
|
||||
|
||||
call() {
|
||||
|
||||
Reference in New Issue
Block a user