如何制作适用于Skype的链接(预览图像标签)

23

在Skype中分享某些链接会触发该程序显示来自该页面的带有图片的预览。在我工作的一个网站上,某些页面上有大图像,但是Skype却选择了该网站的标志。我无法找到哪些元标记可以使Skype选择所需的图像并进行预览。

我有一个 <link rel="image_src" href="http://www.example.com/path/to/img.png" />,用于Facebook分享预览(会使用而不是网站的标志),但对于Skype无效。

那么,您如何提示Skype使用哪个图像进行预览呢?


这是一个非常好的问题。我猜测试是唯一的方法... - Luke
2个回答

25

我需要找一些来源来支持这一点,但我认为如果你定义了一些开放图元数据,它将选择在其中指定的图像。例如,我在我的网站中有这些:

<meta property="og:title" content="Site Title" />
<meta property="og:type" content="website" />
<meta property="og:url" content="http://my.site.com" />
<meta property="og:image" content="http://my.site.com/images/thumb.png" />
<meta property="og:description" content="Site description" />

Skype上显示为链接预览的图像是在og:image中指定的缩略图(该图像在页面的其他任何位置都不可用)。


5
谢谢,那起作用了!最初我没搞对,因为我漏掉了 og:type。所需的标签是 titletypeurlimage,有趣的是 description 标签也会阻止良好的预览——将其删除并只留下其他四个标签,Skype 就会显示一个带有图片的块。 - ddinchev
1
你好,Skype是否执行JavaScript?我有一个Angular应用程序,这些字段是由JavaScript构建的。 - yu.pitomets
我非常怀疑,@user1315599。如果Skype那样做,想象一下服务器的负载!与此相比,从静态HTML获取og:image标记相对便宜。 - Rauni Lillemets
1
我建议使用服务器端渲染来处理这些元标签。您可以设置重写规则,仅将Skype流量(我认为Skype机器人用户代理是SkypeUriPreview)重定向到页面的服务器端呈现版本。您可以使此页面成为仅包含这些元标记的精简版本。或者,您可以使用类似https://prerender.io的预渲染代理服务器。我已经使用这些设置与Facebook和Twitter共享链接。 - Josh
1
谢谢@Alvaro,但我们还能为Skype或Facebook配置其他标头吗?我的意思是这些都是吗? - Redplane

3

我们已经到了2021年,Skype的问题仍然存在!:/

我在Microsoft论坛上发帖,并且有几位用户遇到同样的问题。

我的Open Graph元数据已经定义好了,事实上链接在Facebook和Twitter上的预览都很好,但是在Skype上不行。

我已经向Skype报告了这个错误,希望他们能做出回应...


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接