【发布时间】:2012-12-18 15:26:55
【问题描述】:
是否可以编写一个使用 Facebook 连接而不使用 JavaScript 的网站?我有一个使用 XFBML 运行良好的网站设置,但是当我在禁用 JavaScript 的情况下访问时(显然)失败了。
我觉得使用REST-api for Facebook 可以做到这一点,但我仍然希望得到一些建议。在Facebook forum 上对此进行了讨论。
【问题讨论】:
标签: facebook
是否可以编写一个使用 Facebook 连接而不使用 JavaScript 的网站?我有一个使用 XFBML 运行良好的网站设置,但是当我在禁用 JavaScript 的情况下访问时(显然)失败了。
我觉得使用REST-api for Facebook 可以做到这一点,但我仍然希望得到一些建议。在Facebook forum 上对此进行了讨论。
【问题讨论】:
标签: facebook
我想做同样的事情。我不担心没有 js 的人,但是 facebook-js-files 加载速度很慢,这会减慢我的整个网站的速度。如果没有 js,Facebook 就无法工作,所以我猜想在您的网站上使用 facebook 登录的每个人都支持 js。
但是对于这个问题。在 PHP-lib 中有一种名为 get_login_url 的方法,您可以使用该方法为您的应用获取登录 url。
$connectUrl = $fb->get_login_url("http://www.yoursite.com/loggedin.php",0);
因此,您可以制作自己的连接按钮来链接到该网址。用户登录 facebook 后,会将他重定向回您指定的网址。如果用户已经在 facebook 上在线,他将立即被重定向回来。
我仍然缺少的是检查用户是否已经在 facebook 上登录而不强制用户单击登录按钮的可能性。还没有想出没有 javascript 的任何方法,但如果我找到了,我会告诉你的。
【讨论】:
Facebook 在没有 js 的情况下工作得很好。它的行为类似于 twitter 的 oauth 过程。查看 facebook 的移动 api。
使用 PHP 变量登录:
如果用户接受登录,$url_accept 是发送用户的位置,如果用户拒绝,则发送$url_cancel。
$facebook_login_url = 'http://m.facebook.com/tos.php?api_key='.$FACEBOOK_API_KEY.'&v=1.0&next='.$url_accept.'&cancel='.$url_cancel;
【讨论】: