3

开始研究 iOS 并且需要 Restful 网络,所以我正在研究 AFNetworking。我遵循了一些很好的示例,并且我想我了解如何使用它,但是构建的请求没有预期的 URL。在 AFHTTPClient requestWithMethod 路径参数方法中,

po urlBase
$0 = 0x003b23b8 https://mysite.com/developer/api
(lldb) po url
$1 = 0x1eddf140 /users/current -- https://mysite.com/developer/api/
(lldb) po request
$2 = 0x1ed50580 <NSMutableURLRequest https://mysite.com/users/current>

由于某种原因,开发人员部分正在被剥离。

我已经看到传递到 getPath 方法的相对路径字符串具有前导斜杠的示例,因此人们会期望基本 URL 没有尾部斜杠,但我已经看到人们在两者中都添加斜杠的示例。

我的基本 URL 变量是

NSString *const ServiceUrlBaseProduction  = @"https://mysite.com/developer/api/";

获取当前用户的相对路径是

@"/users/current";
4

2 回答 2

5

这是因为AFHTTPSessionManager' 对 URL 的解释。AFHTTPSessionManager.h 这里有一个关于如何正确编写 URL 的说明。我相信您会希望使用路径获取当前用户users/current(没有前导斜杠)

于 2013-04-05T14:55:22.913 回答
0

尝试使用 NSURL:

NSURL *url = [NSURL URLWithString:@"https://mysite.com/developer/api/"];

然后:

[NSURL URLWithString:@"users/current" relativeToURL:url]; 
于 2013-04-05T14:52:31.607 回答