artifacts.md +3 −3
326每个工件都是一个独立的页面。Claude Code 将您发布的文件包装在 HTML 文档外壳中,并在严格的内容安全策略 (CSP) 下提供服务,这决定了页面可以执行的操作。326每个工件都是一个独立的页面。Claude Code 将您发布的文件包装在 HTML 文档外壳中,并在严格的内容安全策略 (CSP) 下提供服务,这决定了页面可以执行的操作。
327 327
328| 约束 | 效果 |328| 约束 | 效果 |
329329| :---- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- || :---- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
330330| 外部请求 | 页面可以从 Google Fonts 加载字体,以及从[四个公共 CDN 主机](#allowlist-the-viewer-domain)加载脚本:cdnjs、Tailwind 和 jQuery CDN,以及 jsDelivr 上的选定路径,例如 `/npm/`。CSP 阻止所有外部图像和所有其他外部脚本、样式表和字体,并让 `fetch`、XHR 和 WebSocket 调用仅到达页面自身的源和 Google Fonts 主机。因此,Claude 从这些 CDN 之一加载页面需要的任何库,内联所有其他 CSS 和 JavaScript,并将图像嵌入为数据 URI。[连接器调用](#pull-live-data-with-mcp-connectors)通过 claude.ai 进行,它自己进行网络调用。 || 外部请求 | 页面可以从 Google Fonts 加载字体,以及从[五个公共 CDN 主机](#allowlist-the-viewer-domain)加载脚本:cdnjs、unpkg、Tailwind 和 jQuery CDN,以及 jsDelivr 上的选定路径,例如 `/npm/`。CSP 阻止所有外部图像和所有其他外部脚本、样式表和字体,并让 `fetch`、XHR 和 WebSocket 调用仅到达页面自身的源和 Google Fonts 主机。因此,Claude 从这些 CDN 之一加载页面需要的任何库,内联所有其他 CSS 和 JavaScript,并将图像嵌入为数据 URI。[连接器调用](#pull-live-data-with-mcp-connectors)通过 claude.ai 进行,它自己进行网络调用。 |
331| 无后端 | 工件是一个静态页面。它无法自行对查看者进行身份验证。 |331| 无后端 | 工件是一个静态页面。它无法自行对查看者进行身份验证。 |
332| 下载 | 页面无法自行启动下载。为了让查看者保存页面生成的文件,Claude 声明下载功能。请参阅[提供文件下载](#offer-a-file-download)。 |332| 下载 | 页面无法自行启动下载。为了让查看者保存页面生成的文件,Claude 声明下载功能。请参阅[提供文件下载](#offer-a-file-download)。 |
333| 单页面 | 相对链接无法解析,因为页面旁边没有部署任何内容。对于多部分内容,Claude 使用页面内锚点而不是单独的文件。 |333| 单页面 | 相对链接无法解析,因为页面旁边没有部署任何内容。对于多部分内容,Claude 使用页面内锚点而不是单独的文件。 |
417 417
418从 [Google Fonts](#improve-the-visual-design) 加载字体的 artifact 也会请求 `fonts.googleapis.com` 和 `fonts.gstatic.com`。两个主机都是可选的。如果您阻止它们,artifacts 将以备用字体呈现。使用快速拒绝而不是静默丢弃来阻止,以便字体请求立即失败,而不是延迟页面的首次呈现。418从 [Google Fonts](#improve-the-visual-design) 加载字体的 artifact 也会请求 `fonts.googleapis.com` 和 `fonts.gstatic.com`。两个主机都是可选的。如果您阻止它们,artifacts 将以备用字体呈现。使用快速拒绝而不是静默丢弃来阻止,以便字体请求立即失败,而不是延迟页面的首次呈现。
419 419
420420Artifacts 还可以从 `cdnjs.cloudflare.com`、`cdn.jsdelivr.net`、`cdn.tailwindcss.com` 和 `code.jquery.com` 加载 JavaScript 库(如 React 或图表包),而不能从任何其他外部主机加载。如果您阻止这些主机,artifact 中依赖库的部分将无法工作,与被阻止的字体不同,被阻止的库没有备用方案。在这里也使用快速拒绝,以便被阻止的库请求立即失败,而不是挂起直到超时。Artifacts 还可以从 `cdnjs.cloudflare.com`、`cdn.jsdelivr.net`、`cdn.tailwindcss.com`、`code.jquery.com` 和 `unpkg.com` 加载 JavaScript 库(如 React 或图表包),而不能从任何其他外部主机加载。如果您阻止这些主机,artifact 中依赖库的部分将无法工作,与被阻止的字体不同,被阻止的库没有备用方案。在这里也使用快速拒绝,以便被阻止的库请求立即失败,而不是挂起直到超时。
421 421
422<h3 id="list-and-delete-artifacts-with-the-compliance-api">422<h3 id="list-and-delete-artifacts-with-the-compliance-api">
423 使用 Compliance API 列出和删除 artifacts423 使用 Compliance API 列出和删除 artifacts