Skip to content

docs(chat): 补充从聊天记录下载资源的分流策略(按链接 host 三层,closes #375)#376

Open
PeterGuy326 wants to merge 1 commit into
mainfrom
docs/chat-media-download
Open

docs(chat): 补充从聊天记录下载资源的分流策略(按链接 host 三层,closes #375)#376
PeterGuy326 wants to merge 1 commit into
mainfrom
docs/chat-media-download

Conversation

@PeterGuy326
Copy link
Copy Markdown
Collaborator

@PeterGuy326 PeterGuy326 commented May 31, 2026

What

references/products/chat.mdmono 与 multi 两份同步)补充一节「从聊天记录下载资源(图片/GIF/文件/视频/文档)」,放在 message list 翻页说明之后、message list-all 之前。

Why

dws chat message list 能拉到带资源的消息,但 skill 文档只讲了「发图片」,没讲拿到链接后如何下载/展示资源。详见 #375

核心结论:下载方式由链接 host 决定,不由文件类型决定

content 里的链接形态 资源性质 下载方式
down.dingtalk.com/media/...(任意类型) 公开 CDN 直链 curl 直接下,无需鉴权
[文件] xxx fileId: <fileId> 钉盘临时签名链接 dws drive download --node <fileId>
alidocs.dingtalk.com/i/nodes/<nodeId> 文档/钉盘节点 dws doc / dws drive download(裸 curl 仅得 HTML 预览页)

实测证据(覆盖图片与非图片)

# media 直链 —— 与文件类型无关,全部裸 curl HTTP 200:
png / jpg / gif → 图片         pdf → application/pdf
docx → Microsoft Word          xlsx → Microsoft Excel          html
# 扩展名 .unknown 时按 application/octet-stream 返回,仍可下载,file 判真实类型为 docx/xlsx/html
# alidocs 节点 —— 裸 curl 只拿到 ~6KB HTML 预览页(非文件本体)
# 钉盘文件 —— drive download --node <fileId> 可下;--help 写明需「下载 URL + 签名请求头」,裸 curl 不通用

dws 无 media 下载命令(dws schema | grep media 为空),media 直链只能 HTTP GET。

文档示例均使用脱敏占位符,不含任何真实链接或 ID。

Closes #375

@PeterGuy326 PeterGuy326 force-pushed the docs/chat-media-download branch 2 times, most recently from ce9f0f1 to 932b87a Compare May 31, 2026 06:57
@PeterGuy326 PeterGuy326 changed the title docs(chat): 补充从聊天记录下载图片/文件资源的两层策略 (closes #375) docs(chat): 补充从聊天记录下载资源的分流策略(按链接 host 三层,closes #375) May 31, 2026
@PeterGuy326 PeterGuy326 force-pushed the docs/chat-media-download branch from 932b87a to f78e19a Compare May 31, 2026 06:58
mono 与 multi 两份 chat.md 同步新增「从聊天记录下载资源」一节,按链接 host 分三类:
- down.dingtalk.com/media:公开 CDN 直链,与文件类型无关(实测 png/jpg/gif/pdf/docx/xlsx/html 均 HTTP 200),优先 curl;扩展名 .unknown 时按 octet-stream 下载后用 file 判类型
- 钉盘文件 fileId:临时签名链接,走 dws drive download --node <fileId>
- alidocs.dingtalk.com/i/nodes:文档/视频节点,裸 curl 仅得 HTML 预览页,走 dws doc / dws drive
示例全部脱敏占位符,明确 media 直链下载属 curl 禁令的例外。

Closes #375
@PeterGuy326 PeterGuy326 force-pushed the docs/chat-media-download branch from f78e19a to 235e371 Compare May 31, 2026 07:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

docs(chat): 补充图片/媒体消息资源下载方式——mediaId 公开直链优先 curl,钉盘文件用 drive download

1 participant