没有提示身份验证的Facebook应用程序

没有提示身份验证的Facebook应用程序,facebook,facebook-graph-api,Facebook,Facebook Graph Api,我一直在想办法让我的iframe Facebook应用程序(内置PHP)不需要单独的身份验证方法就可以工作。我已经登录到Facebook,但出于某种原因,我仍然可以在PHPSDK的示例中看到所有这些Oauth通知 我需要的唯一数据是公开的,即使没有他们“添加”我的应用程序。我正在寻找收集他们的Facebook ID(因为这是一个比赛,我们需要一个唯一的ID进行跟踪),他们的名字和(可选)他们的电子邮件地址以及 问题是,我不能使用API获取公共信息,除非我已经知道他们的Facebook用户名。关于

我一直在想办法让我的iframe Facebook应用程序(内置PHP)不需要单独的身份验证方法就可以工作。我已经登录到Facebook,但出于某种原因,我仍然可以在PHPSDK的示例中看到所有这些Oauth通知

我需要的唯一数据是公开的,即使没有他们“添加”我的应用程序。我正在寻找收集他们的Facebook ID(因为这是一个比赛,我们需要一个唯一的ID进行跟踪),他们的名字和(可选)他们的电子邮件地址以及

问题是,我不能使用API获取公共信息,除非我已经知道他们的Facebook用户名。关于如何获取他们的登录用户名或公共句柄以便获取其余信息,有什么想法吗

不管出于什么原因,Oauth今天用Facebook让我彻底疯了

旁注:


我确实设法使Javascript SDK在技术上可以运行,这为PHP提供了一些信息以供使用。唯一的问题是,一旦我登录,我就看不到数据。如果我刷新…它就会出现。不确定为什么需要刷新,因为我不希望用户实际上必须点击刷新才能继续使用应用程序。

我猜您在这里有点困惑,如果用户没有明确授权/允许您的应用程序,Facebook将不会共享用户名、id、全名或电子邮件(如果是电子邮件,请请求
电子邮件
许可!)

有关更多信息,请阅读官方文件:

以便访问您的计算机上可用的所有用户信息 默认情况下(如用户的Facebook ID),用户必须授权 你的应用程序


这有点奇怪,因为我想要的基本信息对任何人都是公开的,假设我已经知道他们的用户名。在这个例子中,它在Facebook的PHP SDK中,就像这样…$naitik=$Facebook->api('/naitik'));准确地说,你在这里说的:
假设我已经知道他们的用户名
,用户名就像ID一样是唯一的,所以这就像说我试图猜测一个ID!如果你需要Facebook向你发送访问你的应用的当前未知用户公共详细信息(包括用户名和ID),用户必须授权你的应用。