gpt4 book ai didi

Facebook 分享 : going from 'feed' to 'share_open_graph'

转载 作者:行者123 更新时间:2023-11-30 05:25:40 25 4
gpt4 key购买 nike

我正在处理一个 Angular 应用程序,假设我没有使用任何元标记,那么我如何使用共享对话框让用户共享我的应用程序页面?

使用旧的 Feed Dialog 可以,但已被弃用:

$scope.share = function() {
FB.ui({
method: 'feed',
name: 'This is the name field',
link: 'The link',
picture: 'The picture',
caption: 'The caption',
description: 'This is the content of the "description" field, below the caption.'
})
},
function(response) {
if (response && !response.error_code) {
console.log('Posting completed.');
} else {
console.log('Error while posting.');
}
});
};

因此,尽管这可行,但我想以相同的方式使用Share Diolog,但我还没搞清楚。这是我一直在尝试的,请记住我是新手:

$scope.share = function() {
FB.ui({
method: 'share_open_graph',
action_type: 'og.likes',
action_properties: JSON.stringify({
object: {
'title': 'The title',
'image': 'An image',
'url': $scope.shareUrl,
'description': 'This is the description',
}
})
},
function(response) {
if (response && !response.error_code) {
console.log('Posting completed.');
} else {
console.log('Error while posting.');
}
});
};

有什么提示吗?

最佳答案

简短的回答是你不能,你必须使用 OpenGraph 元标记。

由于 Facebook 不理解 JavaScript,因此不理解 Angular,因此您必须检测 Facebook 的爬虫服务器端并为它们呈现静态页面而不是 Angular 应用程序。

虽然具体实现会因您的服务器技术而异,但总体思路如下:

  1. 为需要共享的资源设置路由:http://example.com/resources/:id
  2. 寻找用户代理
  3. 如果它是 Facebook 的爬虫之一,获取资源并呈现带有 OpenGraph 标签和空主体的简单 View 。否则,只需渲染 Angular 应用即可。

Facebook的爬虫可用here他们目前是:

  • facebookexternalhit/1.1 (+http://www.facebook.com/externalhit_uatext.php)
  • facebookexternalhit/1.1
  • Facebook

关于 Facebook 分享 : going from 'feed' to 'share_open_graph' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25152062/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com