iPhone:如何使用Xcode向Web服务发送HTTP请求

如何使用Objective-C向Web服务发送HTTP请求? 我需要从我的MySQL数据库中获取一些数据,所以我需要发送请求以便我可以获取数据。

编辑,因为这是一个受欢迎的问题,时间在继续。 与此同时,Apple推出了NSJSONSerialization。 查看文档: https : //developer.apple.com/documentation/foundation/jsonserialization仅当您需要为早于5.0的iOS创建代码时,您可能需要使用如下所述的json-framwork。

除此之外,以下原始答案仍然有效:

假设您使用JSON交换数据,您可能有兴趣阅读此内容。 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上的搜索将为您提供有关该示例和教程的链接。 但我建议先从这里开始,尽管这可能不是最终解决方案。

有很多方法,但也许最简单的方法是使用现有的框架ASIHTTPRequest。

请参阅: http : //allseeing-i.com/ASIHTTPRequest/

以下是您可以使用的许多非常着名的图书馆

ASIHTTPRequest

AFNetwork

MFNetwork

你可以在谷歌搜索,在github下载,或者,当然,为什么不使用Cocoapods。 当我将objective-c与其他语言进行比较时,这是最好的事情。

祝你好运

ASIHTTPRequest是一个伟大而简单的框架,所以我推荐其他post的推荐。 尽管如此,您还应该知道,您可以在没有其他框架的情况下在Objective-C中本地执行此操作。 请查看NSURLConnection和NSURLConnectionRequest类的Apple文档以获取背景信息。