使用FaceBook 3.1 API的画布应用程序?

使用FaceBook 3.1 API的画布应用程序?,facebook,Facebook,过去,我曾使用旧的rest api开发过一些FB应用程序,现在我正在考虑通过将它们移植到新的3.1 api中,使它们真正可用 听起来不错,但出于某种原因,这比我应该做的要难 所以这里有几个问题: 是否有使用3.1 API的画布应用程序的示例?谷歌没有给我任何有用的东西 iframe和fmblcanvas应用程序之间还有区别吗?在我的应用程序设置中,我选中了fmbl选项,但当我回到应用程序概述页面时,它仍然说这是一个iframe应用程序。 SDK提到了获取用户id的getUser函数,但是我如何为

过去,我曾使用旧的rest api开发过一些FB应用程序,现在我正在考虑通过将它们移植到新的3.1 api中,使它们真正可用

听起来不错,但出于某种原因,这比我应该做的要难

所以这里有几个问题:

是否有使用3.1 API的画布应用程序的示例?谷歌没有给我任何有用的东西 iframe和fmblcanvas应用程序之间还有区别吗?在我的应用程序设置中,我选中了fmbl选项,但当我回到应用程序概述页面时,它仍然说这是一个iframe应用程序。 SDK提到了获取用户id的getUser函数,但是我如何为我的应用请求必要的权限呢?当我在谷歌上搜索时,我甚至找到了另一种解决方案,它调用特定的url,然后执行回调。然而,这个解决方案似乎根本不适用于php sdk! php api的文档在哪里?我发现唯一有用的东西是:它只包含几行代码。我怀疑这是因为在你自己的网站上有一个fb登录按钮,而不是一个canvas应用程序。
首先,祝你好运,并致以最美好的祝愿——你会需要它的。维护Facebook应用程序比它应该做的要困难得多,因为Facebook不相信传统的支持,总是在改变事情,并且快速而彻底地否定事情。作为前Facebook应用程序开发人员,我可以告诉你,只有一个不变的事实:如果你不去管应用程序,它们就会死掉。作为一名应用程序开发者,Facebook不欠你任何人情,而且当涉及到破坏应用程序时,它是邪恶的

至于细节:截至2012年6月,Facebook已经发布了和RESTAPI,canvas应用程序和iFrame应用程序之间不再有任何区别。这不是一个软的,你不应该使用它的弃用-这是一个硬的,你的应用程序现在被破坏弃用。所有应用程序现在都是iFrame应用程序,因为不再有任何其他方法来构建它们。关于如何构建canvas/iFrame应用程序的文档如下所示,其中有一个可能有助于转换的文档。哦,如果你还没有,你也需要让你的应用程序在HTTPS上运行

至于它的其余部分,它很糟糕,但您真正能够维护并使应用程序工作的唯一方法是使用。使用PHPSDK,您只需运行$facebook->api'/graph/url/here'-例如,要获取用户信息,请运行$facebook->api/$userid。您可以从打开的Graph文档中获取URL,只需抓取Graph.facebook.com位之后的所有内容并将其传递给api即可。这是另一条学习曲线,取决于代码的复杂性/模块性,变化从很多到噩梦般的堆积如山,而且没有替代品。有时您可以使用旧的RESTAPI,但我怀疑这种情况也会持续很久。这很痛苦,但事情就是这样。你受Facebook的摆布,因为这是他们的数据

升级应用程序需要转变思维:应用程序现在实际上只是被Facebook chrome包围的网页。现在,使用Facebook api获取信息的外部网站和在Facebook内部运行的应用程序之间没有什么区别。正是出于这个原因,就我个人而言,我把注意力转移到了我自己的应用程序上——一个碰巧使用Facebook来满足大多数发布/共享/用户信息需求的外部网站


对于授权,您可以通过OAuth使用任意数量的方法请求权限。也有关于如何做到这一点的文档。特别是对于PHPAPI,您可以使用生成URL,然后重定向到该URL。Facebook最终会重定向回您指定的URL,其中包含他们是否授权了您的应用等信息,之后您可以进行getUser。如果你想在没有大量重定向的情况下使用花哨的/流畅的/用户友好的弹出对话框,那么这个对话框就是你的朋友。

首先,祝你好运,并致以最美好的祝愿——你需要它。维护Facebook应用程序比它应该做的要困难得多,因为Facebook不相信传统的支持,总是在改变事情,并且快速而彻底地否定事情。作为前Facebook应用程序开发人员,我可以告诉你,只有一个不变的事实:如果你不去管应用程序,它们就会死掉。作为一名应用程序开发者,Facebook不欠你任何人情,而且当涉及到破坏应用程序时,它是邪恶的

至于细节:截至2012年6月,Facebook已经发布了和RESTAPI,canvas应用程序和iFrame应用程序之间不再有任何区别。这不是一个软的,你不应该使用它的弃用-这是一个硬的,你的应用程序现在被破坏弃用。所有应用程序现在都是iFrame应用程序,因为不再有任何其他方法来构建它们。关于如何构建canvas/iFrame应用程序的文档如下所示,其中有一个可能有助于转换的文档。哦,如果你还没有,你也需要让你的应用程序在HTTPS上运行

至于它的其余部分,它很糟糕,但您真正能够维护并使应用程序工作的唯一方法是使用。使用PHPSDK,您只需运行$facebook->api “/graph/url/here”-例如,要获取用户信息,请运行$facebook->api/$userid。您可以从打开的Graph文档中获取URL,只需抓取Graph.facebook.com位之后的所有内容并将其传递给api即可。这是另一条学习曲线,取决于代码的复杂性/模块性,变化从很多到噩梦般的堆积如山,而且没有替代品。有时您可以使用旧的RESTAPI,但我怀疑这种情况也会持续很久。这很痛苦,但事情就是这样。你受Facebook的摆布,因为这是他们的数据

升级应用程序需要转变思维:应用程序现在实际上只是被Facebook chrome包围的网页。现在,使用Facebook api获取信息的外部网站和在Facebook内部运行的应用程序之间没有什么区别。正是出于这个原因,就我个人而言,我把注意力转移到了我自己的应用程序上——一个碰巧使用Facebook来满足大多数发布/共享/用户信息需求的外部网站


对于授权,您可以通过OAuth使用任意数量的方法请求权限。也有关于如何做到这一点的文档。特别是对于PHPAPI,您可以使用生成URL,然后重定向到该URL。Facebook最终会重定向回您指定的URL,其中包含他们是否授权了您的应用等信息,之后您可以进行getUser。如果您想在没有大量重定向的情况下使用花哨的/流畅的/用户友好的弹出对话框,您的朋友就是您的朋友。

谢谢您提供这些信息。我现在怀疑我是否应该尝试移植它:pHa,是的,这是我的目标之一——澄清它不仅仅是更新几个电话。如果这对你来说是值得的,那就去做吧,这将是一次很好的学习经历,尽管可能会让你感到沮丧。我有一个重要的用户群,正如我所说,我目前正在将我的应用程序作为一个外部站点重新编写。它可能最终也会有一个Facebook iFrame,但这并不像更新几个电话那么简单。谢谢你提供的信息。我现在怀疑我是否应该尝试移植它:pHa,是的,这是我的目标之一——澄清它不仅仅是更新几个电话。如果这对你来说是值得的,那就去做吧,这将是一次很好的学习经历,尽管可能会让你感到沮丧。我有一个重要的用户群,正如我所说,我目前正在将我的应用程序作为一个外部站点重新编写。它可能最终也会有一个Facebook iFrame,但这并不像更新几个电话那么简单。