我将尝试解释一下我的问题的背景。
语境:
不久前,我开始研究 Facebook 应用程序。要求之一是作为选项卡包含在 Facebook 页面中。此应用程序将在页面上包含一个发送按钮,以便能够使其与特定人员更具互动性,应用程序的用户将自行选择。这背后的原因是因为包含该应用程序的 Facebook 页面与酒精有关,“喜欢”该应用程序将获得更多的试听和潜在的孩子。使用发送按钮而不是 Facebook 的其他类似选项(如发送对话框等)的另一个原因是因为在 Facebook 文档中声明发送按钮适用于移动设备,而其他选项则不适用。
问题:
我的问题与发送按钮有关。我需要的是能够完全配置发送按钮:url、图片、标题、描述。为了能够做到这一点,我研究了开放图形标签。如果我想与消息一起发送的页面是 Facebook 之外的网站,那么一切正常。一旦我开始使用 Facebook 页面的 url(我们称之为 www.facebook.com/mycustompage),爬虫就会从 facebook.com 获取图像、标题、描述,而忽略实际页面,并且生成的消息不是我的想。
我进行了很多搜索以更好地了解此限制,但找不到任何相关内容。我能找到的唯一可能的解决方案是(即使是这个我也很难找到): 发送按钮返回错误代码,就像按钮工作正常
上面的讨论是我已经实施的解决方法,但不是 100% 我想要的。所描述的解决方法是关于放入发送按钮:
<div class="fb-send" data-href="http://www.mycustomdomain.com/og"></div>
嗅探用户代理的页面。如果用户代理是 Facebook 爬虫,仅使用打开的图形标签提供 html 空页面,否则重定向到所需的 URL - 在我们的例子中是 facebook 页面 www.facebook.com/mycustompage。
产生的消息包含:
- 标题是指向 www.mycustomdomain.com/og 的链接,单击该链接会在新选项卡中打开一个页面,地址为 www.facebook.com/mycustompage - 这还可以
- 在标题下,我有一个包含链接域的“子标题”只读文本:www.mycustomdomain.com - 这不行,因为我不想分享我托管应用程序的位置。
- 图像和所需的描述 - 这没关系。
结论:
- 我想知道是否有更好的方法来做到这一点而不是这种解决方法。
- 如果不是,我想知道如何为生成的消息隐藏“副标题”,以使托管域不可见。