twitter card 需正确设置 twitter:card 等 meta 标签,图片须 https 绝对路径、≥280×157px、宽高比≤2:1、返回200且带 cors 头;调试必须用官方 validator 强制刷新,x 缓存最长7天。

Twitter Card 能让网页在被分享到 X(原 Twitter)时显示带图、标题、描述的富媒体卡片,但直接加 meta 标签不一定会生效——X 的爬虫不抓取或缓存旧数据是最常见原因。
必须用 twitter:card 指定卡片类型,且值只能是 summary、summary_large_image 等官方支持类型
填错类型(比如写成 large_summary 或漏掉前缀)会导致卡片完全不渲染。X 不做容错,只认精确匹配。
-
summary:默认小图卡片,适合文字为主页面 -
summary_large_image:推荐用于博客、新闻页,大图+标题+描述,但图片需 ≥ 280×157px 且宽高比 ≤ 2:1 - 别用
app或player,除非真有原生 App 或音视频嵌入需求
图片必须通过 twitter:image 显式声明,且 URL 必须可公开访问、返回 200 状态码
X 的爬虫不会执行 JS,也不会读取 <meta property="og:image"> 代替。即使 Open Graph 标签齐全,缺了 twitter:image 就没图。
- 图片路径不能是相对地址(如
/img/thumb.jpg),必须是完整 HTTPS URL(如https://example.com/img/thumb.jpg) - 服务器需允许跨域访问(响应头含
Access-Control-Allow-Origin: *),否则 X 爬虫会拒载 - 避免 CDN 缓存返回 404 或重定向——X 不跟跳,直接放弃加载图片
调试要用 https://cards-dev.twitter.com/validator,不是靠手动发推测试
本地改完 meta 标签后,发推看不到效果?大概率是 X 缓存了旧版本。validator 工具会强制重新抓取并显示解析结果,还能报出具体哪条 meta 缺失或格式错误。
- 输入网址后点 “Preview card”,别信 “Success” 提示——要往下看实际渲染图和字段解析详情
- 如果提示
Unable to fetch page,检查服务器是否屏蔽了TwitterbotUA(不该屏蔽)或 TLS 版本过低(X 要求 TLS 1.2+) - 修改 meta 后,validator 里点 “Refresh” 才会清缓存;X 自身缓存最长可达 7 天,不走 validator 就只能等
最容易被忽略的是图片尺寸合规性和服务器响应头——哪怕所有标签都写对了,一张 279×156px 的图或缺失 Cross-Origin 头,都会让卡片退化成纯链接。
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!











