2

我正在开发一个与 Google App Engine 应用程序一起使用的 iPhone 应用程序。我设法使用谷歌帐户登录并获得身份验证令牌。我还可以从 GAE 服务获取数据(我是在阅读了这里写的另一个问题后才这样做的)但是现在我需要 POST 数据,所以我需要在 POST 请求的标头中发送身份验证令牌。我尝试了几种选择,但都没有奏效。

这是我用来将该身份验证放入标头的代码:

NSString* urlStr = [NSString stringWithFormat:@"%@%@", HOST, url];
NSMutableURLRequest* urlPost = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:urlStr]]; 
NSString* authStr = [NSString stringWithFormat:@"GoogleLogin auth=%@", token];
[urlPost addValue:authStr forHTTPHeaderField:@"Authorization"];

但它不起作用。

有什么帮助吗?

4

3 回答 3

3

您需要使用[request setHTTPMethod: @"POST"][request setHTTPBody: postdata]正确配置 POST 组件。有关更多详细信息,请参阅NSMutableURLRequest文档。

于 2009-01-02T13:00:18.667 回答
2

每当我解决与 HTTP 相关的问题时,我会使用的第一个工具是Charles HTTP Proxy。它将向您显示整个请求和响应以供仔细检查。

于 2009-01-02T08:34:26.793 回答
1

如果您针对 App Engine 应用程序进行身份验证,则需要获取并发送身份验证 cookie,而不是使用 GoogleLogin 身份验证。Python SDK 中的 appengine_rpc.py 的源代码演示了如何操作。

于 2009-05-03T14:07:59.357 回答