如何使用 Objective-C 向 Web 服务发送 HTTP 请求?我需要从 MySQL 数据库中获取一些数据,因此我需要发送请求以便获取数据。
编辑,因为这是一个热门问题,而且时间在不断流逝。
与此同时,Apple 引入了 NSJSONSerialization。看一下文档:https://developer.apple.com/documentation/foundation/jsonserialization https://developer.apple.com/documentation/foundation/jsonserialization仅当您需要为 5.0 之前的 iOS 创建代码时,您可能需要使用下面提到的 json-framwork。
除此之外,以下原始答案仍然有效:
假设您以 JSON 格式交换数据,您可能有兴趣阅读本文。http://iosdevelopertips.com/cocoa/json-framework-for-iphone-part-2.html http://iosdevelopertips.com/cocoa/json-framework-for-iphone-part-2.html
但是,该文章的第一部分回答了有关如何从 Web 服务器/服务接收数据的更普遍的问题:
- (NSString *)stringWithUrl:(NSURL *)url
{
NSURLRequest *urlRequest = [NSURLRequest requestWithURL:url
cachePolicy:NSURLRequestReturnCacheDataElseLoad
timeoutInterval:30];
// Fetch the JSON response
NSData *urlData;
NSURLResponse *response;
NSError *error;
// Make synchronous request
urlData = [NSURLConnection sendSynchronousRequest:urlRequest
returningResponse:&response
error:&error];
// Construct a String around the Data from the response
return [[NSString alloc] initWithData:urlData encoding:NSUTF8StringEncoding];
}
这是一个简单的 http 请求示例,对于您的后续步骤来说肯定足够了。
该方法给出一个 URL,并以 NSString 形式返回服务器发送的数据。
一旦正常工作,您将希望避免您的应用程序在请求“播出”时冻结。
您可以通过异步请求来解决这个问题。 Google 或 stackoverflow 上的搜索将为您提供相关示例和教程的链接。但我建议先从这里开始,尽管这可能不是最终的解决方案。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)