URL加载系统

与URL交互并使用标准Internet协议与服务器通信。

骨架

  • 基础

在本页面

概观

URL加载系统使用https您创建的标准协议或自定义协议提供对URL标识的资源的访问。加载是异步执行的,因此您的应用程序可以保持响应并在到达时处理传入的数据或错误。

您可以使用URLSession实例创建一个或多个实例,这些实例可以获取数据并将数据返回到应用程序,下载文件或将数据和文件上载到远程位置。要配置会话,请使用一个对象,该对象控制如何使用缓存和cookie的行为,或者是否允许在蜂窝网络上进行连接。URLSessionTaskURLSessionConfiguration

您可以重复使用一个会话来创建任务。例如,Web浏览器可能具有用于常规和私人浏览使用的单独会话,其中私有会话不缓存其数据。图1显示了具有这些配置的两个会话如何创建多个任务。

图1

从URL会话创建任务

每个会话都与一个委托相关联,以接收定期更新(或错误)。默认委托调用您提供的完成处理程序块; 如果您选择提供自己的自定义委托,则不会调用此块。

您可以将会话配置为在后台运行,以便在应用程序暂停时,系统可以代表它下载数据并唤醒应用程序以提供结果。

话题

第一步

配置和创建会话,然后使用它们创建与URL交互的任务。

将网站数据提取到内存中

通过从URL会话创建数据任务将数据直接接收到内存中。

将数据上传到网站

将数据从您的应用发布到服务器。

在后台下载文件

创建在应用处于非活动状态时下载文件的任务。

1
class URLSession

协调一组相关网络数据传输任务的对象。

1
class URLSessionConfiguration

用于定义URL会话的行为和策略的配置对象。

1
class URLSessionTask

在URL会话中执行的任务,如下载特定资源。

请求和回复

1
struct URLRequest

一个独立于协议或URL方案的URL加载请求。

1
class URLResponse

与URL加载请求的响应关联的元数据,与协议和URL方案无关。

1
class HTTPURLResponse

与HTTP协议URL加载请求的响应关联的元数据。

缓存行为

访问缓存数据

控制URL请求如何使用以前缓存的数据。

1
class CachedURLResponse

对URL请求的缓存响应。

1
class URLCache

将URL请求映射到缓存的响应对象的对象。

身份验证和凭据

处理身份验证挑战

当服务器要求对URL请求进行身份验证时,适当地做出响应。

1
class URLAuthenticationChallenge

来自需要客户端身份验证的服务器的挑战。

1
class URLCredential

An身份验证凭据,包括特定于凭证类型的信息和要使用的持久性存储的类型(如果有)。

1
class URLCredentialStorage

共享凭证缓存的管理员。

1
class URLProtectionSpace

服务器或服务器上的区域,通常称为域,需要身份验证。

饼干

1
class HTTPCookie

HTTP cookie的表示。

1
class HTTPCookieStorage

管理cookie存储的容器。

错误

1
struct URLError

URL加载API返回的错误代码。

URL加载系统错误信息键

从URL加载API生成的错误对象的用户信息字典中识别这些键。

遗产

旧版URL加载系统

将代码迁移远离使用这些旧对象。

也可以看看

联网

你好

通过广告服务在本地网络上轻松发现,或发现其他人宣传的服务。