【问题标题】:NSURLConnection or NSurl?NSURLConnection 还是 NSurl?
【发布时间】:2010-09-04 10:23:56
【问题描述】:

NSURLConnectionNSURL 有什么区别?

我的意思是,如果我正在下载一个文件,它会影响我使用哪个文件吗?

Rgds

为:

     NSString *myUrl = @"http://www.test.com/"; 
     NSString *returnData = [NSString stringWithContentsOfURL:[NSURL URLWithString: myUrl]]; 

     NSString *myUrl = @"http://www.test.com/"; 
     NSURLRequest *myRequest = [[NSURLRequest alloc] initWithURL: [NSURL URLWithString:myUrl] ]; 
     NSString *returnData = [NSURLConnection sendSynchronousRequest:myRequest returningResponse: nil error: nil ];  

有什么区别?

谢谢

【问题讨论】:

    标签: iphone nsurlconnection nsurl


    【解决方案1】:
    • 连接

      NSURLConnection 对象支持执行加载URL 请求

    • 请求

      NSURLRequest 对象以独立于协议和 URL 方案的方式表示 URL 加载请求。

      例如requestWithURL:

      使用默认缓存策略和超时值创建并返回对指定 URL 的 URL 请求。

      + (id)requestWithURL:(NSURL *)theURL
      
    • 网址

      NSURL 类提供了一种操作 URL 及其引用的资源的方法。 NSURL 对象理解 RFC 1808、1738 和 2732 中指定的 URL。 ...

      要获取 URL 的内容,NSString 提供 stringWithContentsOfURL:NSData 提供 dataWithContentsOfURL:

    参考文献:

    【讨论】:

    • 表示nsurlconnection只是加载一个网页,会显示整个网页,nsurl是获取网页内的数据?
    • 不,请阅读 The MYYN 提供的链接。 NSURL 是一个代表 URL 的模型类。 NSURLConnection 是一个可以让你从 URL 下载数据的类。为了使用 NSURLConnection,你需要使用 NSURLRequest 创建一个 URL 请求,它使用 NSURL 来表示它的 URL。阅读标题为 Cocoa URL Loading System 的 Cocoa 文档。
    • for: NSString *myUrl = @"google.com"; NSString *returnData = [NSString stringWithContentsOfURL:[NSURL URLWithString: myUrl]];或 NSString *myUrl = @"google.com"; NSURLRequest *myRequest = [ [NSURLRequest alloc] initWithURL: [NSURL URLWithString:myUrl] ]; NSString *returnData = [ NSURLConnection sendSynchronousRequest:myRequest returnedResponse: nil error: nil ];有什么区别?
    • 如果您将上面的评论与代码一起编辑到问题中,我会更清楚,因为它在评论中几乎不可读。然而,答案是差别很小。第二种方法为您提供了更多处理错误的空间。两种方法都是同步的;您应该改用异步网络,这样您的应用程序在从网络获取时不会锁定。
    【解决方案2】:

    NSURLConnection 最好的一点是它的异步行为,这样您就不必等到 url 加载完毕。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-01-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-12-15
      • 1970-01-01
      相关资源
      最近更新 更多