AFJsonRequest和AFHttpClient一起工作吗?

时间:2012-04-07 13:20:39

标签: ios json afnetworking

    NSURL *url = [NSURL URLWithString:@"contact.php"];
AFHTTPClient *httpClient = [[AFHTTPClient alloc] initWithBaseURL:url];

NSDictionary *params = [NSDictionary dictionaryWithObjectsAndKeys:
                        @"companyID", constCompanyID,
                        nil];

NSURLRequest *request = [httpClient requestWithMethod: @"POST" path:@"contact.php" parameters:params];


AFJSONRequestOperation *operation = [AFJSONRequestOperation JSONRequestOperationWithRequest:request success:^(NSURLRequest *request, NSHTTPURLResponse *response, id JSON) {
    for(id entry in JSON)
    {
        self.strAddr = [entry valueForKeyPath:@"addr"];
        CCLOG(@"Address: %@", self.strAddr);
    }
} failure:nil];
[operation start];
CCLOG(@"Address: %@", strAddr);

在日志中,地址为空。 PHP很好;在浏览器中,它返回我想要的内容。

此代码一直有效,直到我添加了AFHTTPClient来传入变量。我一定做错了,或者我不能那样做?

1 个答案:

答案 0 :(得分:2)

在第1行,您正在尝试从“contact.php”创建一个网址(NSURL +URLWithString:返回nil),当您真正需要的是基本网址时 - 完整的网址这在特定Web服务的请求中很常见,例如“http://api.twitter.com/1/”。