NSURLConnection发送GET请求而不是POST请求

时间:2013-06-27 19:18:25

标签: ios post get nsurlconnection charles-proxy

我正在尝试使用NSURLConnection发出POST请求。我使用Charles来调试,Charles每次都说这个方法是GET。我已经尝试了所有不同的方法,无法让它发挥作用。我不是在使用JSON。

-(void)getList
{
    [UIApplication sharedApplication].networkActivityIndicatorVisible = YES;

    NSURL *url = [NSURL URLWithString:@"http://example.com/api/getList"];
    NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url];

    NSString *radius = @"15";
    NSString *latitude = @"-117.820833";
    NSString *longitude = @"34.001667";

    NSString *parameters = [NSString stringWithFormat:@"longitude=%@&latitude=%@&radius=%@", longitude,latitude, radius];
    NSLog(@"PARAMS = %@", parameters);

    NSData *data = [parameters dataUsingEncoding:NSUTF8StringEncoding];

    [request setHTTPMethod:@"POST"];
    [request setValue:@"text/plain" forHTTPHeaderField:@"Accept"];
    [request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"];
    [request setHTTPBody:data];

    NSURLResponse *response = nil;
    NSError *error = nil;
    NSData *result = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error];

    NSString *responseString = [[NSString alloc]initWithData:result encoding:NSUTF8StringEncoding];

    NSLog(@"RESULT = %@", responseString);


}

有人知道我做错了什么吗?当我访问我的网络服务时,似乎我没有发布任何内容。我得到了空洞的回应。

请帮助解决任何问题。我几乎要做一个简单的POST请求。也许有人可以帮助我更好地调试它。

1 个答案:

答案 0 :(得分:0)

如果服务器因某种原因(可能是身份验证)重定向您的请求,则POST信息可能会丢失。