Facebook og:标签未找到 - 操作超时(流星)

时间:2014-12-19 21:32:21

标签: facebook-graph-api meteor meta-tags

我正在开发一个流星应用程序,并尝试在人们共享链接时显示Facebook元数据。我们正在使用Iron Router并最终希望拥有动态元内容,但是现在我只是想让静态元内容工作。我读了很多关于spiderable的建议,但我认为提供动态内容更是如此。也许我弄错了?

我一直在使用Facebook调试器,但我不确定如何处理它提供的错误。在Facebook调试器中输入我们的网站URL时出现以下错误:

1)“网站”类型的网址“https://www.mywebsiteURL.com”上的对象无效,因为未提供“string”类型的必需属性“og:title”。

2)卷曲错误:OPERATION_TIMEOUTED操作在10000毫秒后收到0字节超时

3)必须修复的错误对象缺少必需的值 - “网站”类型的网址“https://www.mywebsiteURL.com”上的对象无效,因为必需的属性“og:title”属于没有提供类型'字符串'。

我们肯定有一个og:title,所以我认为这实际上不是问题。

似乎是因为超时它没有取任何东西。我有一个标题块,当我从谷歌网站管理员工具“谷歌获取”时,获取网页标题没有问题。下载时间为0.084秒。我最近做了一个新的索引请求,但我不认为这会导致Facebook的刮刀出现问题。

来自我的index.html文件:

<head>
  <title>Company Name</title>
  <meta name="description" content="Description here">
  <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=0"/>   
  <link rel="shortcut icon" href="image path">

  <!-- Facebook Meta -->
  <meta property="og:title" content="My Page Title"/>
  <meta property="og:type" content="website" />
  <meta property="og:site_name" content="My Website title"/>
  <meta property="og:url" content="https://www.mywebsiteURL.com" />
  <meta property="og:image" content="MyImagePath" />
  <meta property="og:description" content="Website Description" />

  <!-- Twitter Meta -->
  <meta name="twitter:card" content="summary" />
  <meta name="twitter:site" content="@companyname" />
  <meta name="twitter:title" content="My page title" />
  <meta name="twitter:description" content="My page description" />
  <meta name="twitter:image" content="My image path" />
  <meta name="twitter:url" content="https://www.mywebsiteURL.com" />
</head>

我很难过。任何建议都会很棒!

1 个答案:

答案 0 :(得分:1)

我最后通过下载Spiderable package解决了这个问题。我不完全确定为什么Facebook的刮刀在谷歌机器人出现时无法在HTML标题中获取静态元内容。

我使用Homebrew安装PhantomJS。如果您没有返回游标,请不要忘记在发布函数中包含this.ready()