我们正在开发一个具有Facebook共享功能的iOS应用程序。除了Applinks,一切正常。我们正在生成包含指定内容(包括开放图形元标记)的网址链接“应用页面”,我们希望在iOS应用程序中直接向用户显示此内容。
问题在于,尽管Facebook iOS应用确实在大多数情况下从共享链接中提取Applinks元标记,但当我进一步调查时,我发现Facebook在使用链接后无法完全处理链接iOS Facebook共享功能。
当我强迫Facebook再次从链接中获取信息时,它总是成功的!没有任何改变,服务器提供相同的内容。这让我找到了一个解决方案,它涉及强迫Facebook在每次链接共享时更新信息。我们希望避免重复发送请求。
我在Stackoverflow上找到了几个有类似问题的帖子,但没有一个解决方案适合我们。共享链接是公开可用的,不需要用户登录。安全或不安全访问会出现同样的问题。链接导致静态页面(没有javascript)。页面非常小(小于2KB)。
更新(添加了示例元标记)
<!DOCTYPE html>
<html lang="en">
<head>
<title>Title</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta property="al:ios:url" content="appscheme://applink/rodjs2kd48">
<meta property="al:ios:app_store_id" content="123456">
<meta property="al:ios:app_name" content="AppName">
<meta property="al:web:url" content="https://example.com/rodjs2kd48">
<link rel="canonical" href="https://example.com/rodjs2kd48">
<meta property="og:url" content="https://example.com/rodjs2kd48">
<meta property="og:type" content="article">
<meta name="twitter:card" content="summary">
<meta property="og:title" content="Title">
<meta name="twitter:title" content="Title">
<meta property="og:image" content="http://example.com/image.jpg">
<meta name="twitter:image" content="http://example.com/image.jpg">
<meta property="og:description" content="Description">
<meta name="twitter:description" content="Description">
</head>
<body>
Some content
</body>
</html>