如何为私人页面提供Open Graph

时间:2014-05-16 13:04:58

标签: opengraph yammer salesforce-chatter jive

我们希望在Intranet应用程序上实现OpenGraph,这样当人们将应用程序中的URL共享到社交网络(Yammer,Jive,Chatter ......)时,它会显示一个漂亮的缩略图,描述等等。

问题:因为Yammer没有连接到Intranet,它遵循重定向并从登录页面提供OpenGraph数据......

在这种情况下,有没有办法正常行事?

我们提出了3种可能的解决方案:

  • 实现OpenGraph协议的未知但可能存在的部分,以提供私有页面,忽略可能的重定向
  • 做某种伪装 - 检测代理是Yammer或Chatter,并提供专用页面
  • 将OpenGraph元数据保存在某种会话中,并从登录页面(社交网络最终结束的地方)提供服务......

如果您也遇到过这个问题,感谢您的意见!

1 个答案:

答案 0 :(得分:3)

第三种解决方案听起来是最好的解决方案。由于(通过您的规则)允许在Intranet外部显示部分数据,因此您必须在登录页面的元标记中添加单个缩略图和描述。

  • 如果用户已登录,则可以从yoursite.com/username/post123/(通常)页面查看所有数据,
  • 但如果用户未登录(如任何机器人),他会在同一地址上看到登录表格(带有元标记中的缩略图和说明)yoursite.com/username/post123 /
  • 因此所有机器人都会看到正确的OG数据,所有用户都可以照常登录。

(即您不应该重定向未登录的访问者访问网页yoursite.com/loginpage。您必须在所有此类网页上显示登录表单)