【发布时间】:2011-09-07 18:57:33
【问题描述】:
我在这里看到了很多关于 Facebook Graph API 的问题,但我仍然没有找到使用它进行简单“登录”/“注销”操作的解决方案。看起来单点登录风格造成的混乱多于好处。
我想知道是否可能有以下情况:
- 在应用中输入(未创建
accessToken/expirationDate)。 - 通过调用
authorize:delegate:方法使用 SSO 执行登录(应用程序进入后台,登录在“全局”范围内(Facebook 应用程序/移动 Safari)进行,要求提供用户凭据。 - 重新进入应用程序(现在已登录,
accessToken和expirationDate都保存到NSUserDefaults)。 - 通过调用
logout:方法执行注销(现在已注销,accessToken和expirationDate均已从NSUserDefaults中删除) - 尝试再次登录,步骤与 2 中的步骤完全相同。
我意识到当我调用logout: 时,我确实从我的应用程序范围而不是global 范围(Facebook 应用程序/移动 Safari)从 Facebook 注销(accessToken 无效)。在 5.) 中,当我尝试再次登录时,应用程序进入后台,并且像往常一样在 Facebook 应用程序/移动 Safari 中再次进行登录尝试,但是我得到一个屏幕说我'已经登录:
您已经授权
...。按“确定”继续。 以...(不是你?)登录。
对于刚刚在我的应用程序中注销的用户来说,这是一种奇怪的行为。 我的问题是:
“我可以真的在我的应用程序内部从 facebook(我的意思是“全球”范围)注销吗?这也会影响使用 facebook 凭据的其他应用程序。但是,如果我不能这样做,我怎样才能避免上面描述的“奇怪的行为”?
谢谢
【问题讨论】:
标签: iphone facebook ios4 facebook-graph-api logout