reactjs - 推特卡 - "WARN: No metatags found"

标签 reactjs heroku twitter react-router meta

通过 Heroku 托管的 React Web 应用程序为可共享页面设置元标记。我注意到 Twitter 卡片没有正确呈现,尽管页面源正确呈现了 Twitter 和 og 元数据。

鉴于以下情况 - 还有什么我还没有考虑到的吗?

Javascript: 我已经在禁用 javascript 的情况下进行了测试,并且该网站仍然可以正确呈现,并且具有正确的元标记

图像尺寸: 在定义的限制内 - 434px X 650px, 94KB

托管: 托管在 Herokuapp 上,URL 仍然使用 herokuapp 域(尚未切换到生产 url) express 完整网址:https://project.herokuapp.com/share/[ID]

图像托管: 图像引用 URL https://media.project.aws/[etc] 中的 AWS S3 存储桶

机器人: 该网站没有 robots.txt 文件

下面是头部元内容:

twitter.image URL 动态加载 twitter.url,它也是动态的,使用express生成完整的URL(http://project.com/share/page/1234)

<!-- basic meta -->
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
    <meta charset="utf-8" />
    <meta content="text/html; charset=UTF-8" name="Content-Type" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />

    <!-- content meta -->
    <meta name="description" content="description content" />
    <meta name="copyright" content="Copyright 2019" />


    <!-- Twitter meta -->
    <meta property="twitter:card" content="summary_large_image">
    <meta property="twitter:site" content="@handle">
    <meta property="twitter:image" content="${image.url}">
    <meta property="twitter:card" content="summary_large_image">
    <meta property="twitter:url" content="${expressFullURL}">
    <meta property="twitter:title" content="Title">
    <meta property="twitter:description" content="description content">

    <!-- opengraph data -->

    <meta property="og:title" content="Title" />
    <meta property="og:description" content="description content" />
    <meta property="og:url" content="${expressFullURL}" />
    <meta property="og:image" content="${image.url}" />
    <meta property="og:type" content="website" />
    <meta property="og:site_name" content="Site Name" />

使用https://cards-dev.twitter.com/validator 响应是:

INFO:  Page fetched successfully
WARN:  No metatags found

页面上的元数据是正确的,因此无法理解为什么找不到元标记

最佳答案

我也遇到过类似的情况,但似乎有效。我在单击验证器预览按钮时密切关注 Heroku 日志 heroku log --tail。结果我的应用程序收到了 500 错误,因为验证器的请求格式不同。可能值得一试。

关于reactjs - 推特卡 - "WARN: No metatags found",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57287844/

相关文章:

xcode - 为 iOS 客户端寻找 OAuth 版本的 Twitter 代码

ruby-on-rails - 如何通过 activemerchant 确保付款?

postgresql - 是否可以将 Heroku Postgres 数据库复制到笔记本电脑上的从数据库?

javascript - 如何用react js实现分享到twitter

reactjs - 在根域上托管带有 Gitlab 页面的 React 应用程序

heroku - 550 无法从指定地址接收

ios - 除了 TableView 已包含的先前数据之外,如何向 TableView 添加新数据?

javascript - 如何让Material-UI DropDownMenu返回选定的

javascript - 更改父项的 Prop 后,不会重新渲染 React 子项组件

javascript - React JS - 渲染表时错误无法读取未定义的属性 'map'