Iphone 在目标c中建立一个连接函数

Iphone 在目标c中建立一个连接函数,iphone,objective-c,Iphone,Objective C,这是我的代码: NSError *error; NSURLResponse *response; NSData *dataReply; NSString *stringReply; NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL: [NSURL URLWithString: URLGOESHERE]]; [request setHTTPMethod: @"GET"]; dataReply = [NSU

这是我的代码:

    NSError *error;
NSURLResponse *response;
NSData *dataReply;
NSString *stringReply;

NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL: [NSURL URLWithString: URLGOESHERE]];
[request setHTTPMethod: @"GET"];
dataReply = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error];
stringReply = [[NSString alloc] initWithData:dataReply encoding:NSUTF8StringEncoding];
我想把它放在一个函数中,这样我就可以从所有其他按钮调用它,但我可以设置

URLWithString: URLGOESHERE]];
我该怎么做,怎么称呼它

谢谢


梅森

请参见下面的解释,了解为什么这是一个不好的想法

- (NSString *)sendRequestWithURLString:(NSString *)urlString {
    NSError *error;
    NSURLResponse *response;
    NSData *dataReply;
    NSString *stringReply;

    NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL: [NSURL URLWithString:urlString]];
    [request setHTTPMethod: @"GET"];
    dataReply = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error];
    stringReply = [[NSString alloc] initWithData:dataReply encoding:NSUTF8StringEncoding];
    return [stringReply autorelease];
}
然后



因此,请注意,如果您通过按钮调用此函数,它将阻塞主线程,直到它完成,这是不好的。您需要研究异步请求,或者至少使用dispatch_async。

请参阅下面的解释,了解这是一个不好的想法的原因

- (NSString *)sendRequestWithURLString:(NSString *)urlString {
    NSError *error;
    NSURLResponse *response;
    NSData *dataReply;
    NSString *stringReply;

    NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL: [NSURL URLWithString:urlString]];
    [request setHTTPMethod: @"GET"];
    dataReply = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error];
    stringReply = [[NSString alloc] initWithData:dataReply encoding:NSUTF8StringEncoding];
    return [stringReply autorelease];
}
然后



因此,请注意,如果您通过按钮调用此函数,它将阻塞主线程,直到它完成,这是不好的。您需要研究异步请求,或者至少使用dispatch\u async。

asynchronous?我该怎么做?NSURLConnection有异步方法。异步?我该怎么做?NSURLConnection有异步方法。