获取原始Facebook Cookie内容iPhone

时间:2011-01-22 23:09:12

标签: iphone objective-c facebook cookies ios4

我想使用Facebook通过我的Google App Engine网络服务器验证我的iPhone客户端。我认为这样做的方式如下:

  1. 使用iPhone登录iPhone
  2. 获取Facebook Cookie(使用我应用的密码ID签名)
  3. 让iPhone客户端将cookie发送到我的服务器
  4. 从服务器端验证cookie上的签名(也知道应用程序的密钥ID)
  5. 我已经使用javascript客户端和在app引擎上运行的JSON RPC工具成功完成了这项工作,但我似乎可以“使用Facebook SDK(https://github.com/)在iPhone上获取原始Facebook Cookie内容实/ Facebook的IOS-SDK)。使用他们的示例代码,我已经使用Facebook iPhone客户端设置了一个简单的登录。如果你看看Facebook.m它会将cookie读作NSHttpCookie,但它缺少我从javascript客户端看到的信息。

    我没有看到这些信息: =的access_token 到期= 秘密= session_key可以= SIG =

    我至少可以获得访问令牌,另一种在我的服务器上进行身份验证的方法是接受用户访问令牌,然后向服务器端的facebook图形api发出请求以验证访问令牌确实是对于用户声称是谁的用户。

    关于如何在iPhone上获取整个cookie的任何想法?

1 个答案:

答案 0 :(得分:3)

您需要做的是阅读NSHTTPCookieStorageNSHTTPCookie。文档herehere

以下是迭代您的应用有权读/写的Cookie的示例代码:

for(NSHTTPCookie* cookie in [[NSHTTPCookieStorage sharedHTTPCookieStorage] cookies])
{
    // read and write from the CookieStorage
}

正如文档所指出的那样,请记住,您只能访问您的 Cookie,而不能访问任何其他应用,包括Safari.app。