将日期发送到服务器并返回一个字符串

时间:2014-01-03 20:43:57

标签: ios http get

我正在向我的服务器发送用户详细信息,它应该将用户ID作为字符串返回, 在我的服务器上收到的数据我可以得到字符串。

代码:

NSString *urlStr = [NSString stringWithFormat:@"url/////api/%@/%@",
                        [Email.text stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding],
                        [Password.text stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding],
                        nil];

NSString *content = @"field1=42&field2=Hello";

    NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:[NSURL URLWithString:urlStr]];
    [request setHTTPMethod:@"GET"];

    [request setHTTPBody:[content dataUsingEncoding:NSISOLatin1StringEncoding]];

    [NSURLConnection connectionWithRequest:request delegate:self];

    NSURLConnection *connection = [[NSURLConnection alloc]initWithRequest:request delegate:self];

    if (connection) {
        NSLog(@"good conection");

        [_receivedData appendData:_data];
        NSString *DataString = [[NSString alloc] initWithData:_receivedData encoding:NSUTF8StringEncoding];
        NSLog(@"foo1: %@", DataString);
        NSLog(@"foo2: %@", _receivedData);

    }

2014-01-03 22:27:57.322 App[962:70b] foo1: 
2014-01-03 22:27:57.323 App[962:70b] foo2: (null)

1 个答案:

答案 0 :(得分:0)

实现以下NSURLConnection委托以异步方式获取数据。

- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response {
    // A response has been received, this is where we initialize the instance var you created
   // so that we can append data to it in the didReceiveData method
   // Furthermore, this method is called each time there is a redirect so reinitializing it
   // also serves to clear it
   _responseData = [[NSMutableData alloc] init];
}

- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data {
    // Append the new data to the instance variable you declared
    [_responseData appendData:data];
}

- (NSCachedURLResponse *)connection:(NSURLConnection *)connection
              willCacheResponse:(NSCachedURLResponse*)cachedResponse {
    // Return nil to indicate not necessary to store a cached response for this connection
    return nil;
}

- (void)connectionDidFinishLoading:(NSURLConnection *)connection {
    // The request is complete and data has been received
    // You can parse the stuff in your instance variable now

}

- (void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error {
    // The request has failed for some reason!
}