URI和URLConnection类的区别
(1) URI格式
通用资源标志符(Universal Resource Identifier, 简称"URI")
就Android平台而言,URI主要分三个部分:scheme, authority and path。其中authority又分为host和port。
格式如下: scheme://host:port/path
举个实际的例子:
content://com.example.project:200/folder/subfolder/etc
\---------/ \-------------------------/ \---/ \--------------------------/
scheme host port path
\--------------------------------/
authority
(1) URI和URLConnection类的区别
网络中的URL(Uniform Resource Locator)是统一资源定位符的简称。它表示Internet上某一资源的地址。通过URL我们可以访问Internet上的各种网络资源,比如最常见的WWW,FTP站点。 URL可以被认为是指向互联网资源的“指针”,通过URL可以获得互联网资源相关信息,包括获得URL的InputStream对象获取资源的信息,以及一个到URL所引用远程对象的连接URLConnection。 URLConnection对象可以向所代表的URL发送请求和读取URL的资源。通常,创建一个和URL的连接,需要如下几个步骤:
① 创建URL对象,并通过调用openConnection方法获得URLConnection对象;
② 设置URLConnection参数和普通请求属性;
③ 向远程资源发送请求;
④ 远程资源变为可用,程序可以访问远程资源的头字段和通过输入流来读取远程资源返回的信息。
URLConnection 是封装访问远程网络资源一般方法的类,通过它可以建立与远程服务器的连接,检查远程资源的一些属性
URI和URLConnection类可以实现URL连接,这两个类隐藏了与服务器交互时复杂的连接以及数据交互,如果想实现与服务器的交互,首先必须将URL地址作为类URL构造方法的参数构建一个实例。如:
URL url=new URL(urlStr); |
然后通过openConnection( )方法获取一个URLConnection对象,并通过URLConnection类的connect方法实现与服务器的连接。
openConnection( )方法的定义如下:
public URLConnection openConnection() throws IOException:返回一个 URLConnection 对象,它表示到 URL 所引用的远程对象的连接。 |
如:
URLConnection urlCon=url.openConnection() ;//得获取一个URLConnection对象 urlCon.connect();// 连接指定的URL,这时就可以从远程服务器获得想要的数据 |