iOS Objective-C 网络请求教程:GET 和 POST 请求示例
"在iOS中,可以使用Objective-C进行网络请求。下面是一个简单的示例代码,使用NSURLSession进行GET请求:\n\nobjective-c\n// 创建URL对象\nNSURL *url = [NSURL URLWithString:\"https://example.com/api\"];\n\n// 创建NSURLSession对象\nNSURLSession *session = [NSURLSession sharedSession];\n\n// 创建NSURLSessionDataTask对象\nNSURLSessionDataTask *task = [session dataTaskWithURL:url completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {\n if (error) {\n NSLog(@"Error: %@", error);\n } else {\n // 解析响应数据\n NSDictionary *json = [NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:nil];\n \n // 处理响应数据\n NSLog(@"Response: %@", json);\n }\n}];\n\n// 发送请求\n[task resume];\n\n\n上述代码中,首先创建了一个URL对象,用于指定请求的URL。然后创建了一个NSURLSession对象,该对象用于发送网络请求。接下来,使用NSURLSessionDataTask对象发送GET请求,并在请求完成后执行completionHandler中的代码。在completionHandler中,可以处理请求的响应数据。在上述示例中,我们使用NSJSONSerialization将响应数据解析为NSDictionary对象,并输出到控制台上。\n\n如果要发送POST请求,可以使用NSURLSession的dataTaskWithRequest:completionHandler:方法,并将请求类型设置为POST。示例代码如下:\n\nobjective-c\n// 创建URL对象\nNSURL *url = [NSURL URLWithString:\"https://example.com/api\"];\n\n// 创建请求对象\nNSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url];\n[request setHTTPMethod:\"POST\"];\n\n// 设置请求体\nNSString *bodyString = \"param1=value1¶m2=value2\";\n[request setHTTPBody:[bodyString dataUsingEncoding:NSUTF8StringEncoding]];\n\n// 创建NSURLSession对象\nNSURLSession *session = [NSURLSession sharedSession];\n\n// 创建NSURLSessionDataTask对象\nNSURLSessionDataTask *task = [session dataTaskWithRequest:request completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {\n if (error) {\n NSLog(@"Error: %@", error);\n } else {\n // 解析响应数据\n NSDictionary *json = [NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:nil];\n \n // 处理响应数据\n NSLog(@"Response: %@", json);\n }\n}];\n\n// 发送请求\n[task resume];\n\n\n上述代码中,首先创建了一个NSMutableURLRequest对象,并将请求类型设置为POST。然后设置请求体,可以通过将参数拼接成字符串,并使用dataUsingEncoding:方法将其转换为NSData对象。接下来,发送请求和处理响应的代码与GET请求相同。\n\n以上是使用Objective-C进行网络请求的示例代码。你可以根据自己的需求进行修改和扩展。\n\n
原文地址: https://www.cveoy.top/t/topic/prJo 著作权归作者所有。请勿转载和采集!