我正在尝试制作一个网页以在 facebook 中发布状态,但使用 FB 网页上的脚本我无法做到。
<!DOCTYPE html>
<html>
<body>
<div id="fb-root"></div>
<a href="#" onclick="return postToWall();">Post To Wall</a>
<script src="//connect.facebook.net/en_US/all.js"></script>
<script>
FB.init({ appId: 'XXXX',
status: true,
cookie: true,
xfbml: true,
oauth: true });
function postToWall() {
FB.login(function(response) {
console.log(response);
if (response.authResponse) {
FB.ui({
method: 'feed',
name: 'Facebook Dialogs',
link: 'https://developers.facebook.com/docs/reference/dialogs/',
picture: 'http://fbrell.com/f8.jpg',
caption: 'Reference Documentation',
description: 'Dialogs provide a simple, consistent interface for applications to interface with users.'
},
function(response) {
if (response && response.post_id) {
alert('Post was published.');
} else {
alert('Post was not published.');
}
});
} else {
alert('User cancelled login or did not fully authorize.');
}
}, {scope: 'user_likes,offline_access,publish_stream'});
return false;
}
</script>
</body>
</html>
当然,我使用了我的应用程序的正确 appId。我在沙盒模式下有应用程序,因为我仍然什么都没有,只有这个脚本。我的网页只有这部分要发布,没有其他与 facebook 相关的内容。
我正在使用 xampp 在我的计算机中对其进行测试。所以我想在 facebook 应用程序域中我必须编写它,但我尝试的一切(localhost、localhost/faceapp/...)都失败了。例如,我得到这个:
Error
App Domains: http://localhost/appFace should not contain protocol information.
当提示出现时,您可以写下您的用户名和密码,但下一个窗口会告诉您该网页在应用程序配置和其他内容中是不允许的。我是用西班牙语读的,所以我不知道英文的确切句子。
我发现了很多关于这个的答案,但其中大多数来自以前版本的 api ¨(从那以后发生了变化),其他人告诉使用 localhost 左右,我无法保存 fb 应用程序中的更改写.