NSURL其实就是我们在浏览器上看到的网站地址,这不就是一个字符串么,为什么还要在写一个NSURL呢,主要是因为网站地址的字符串都比较复杂,包括很多请求参数,这样在请求过程中需要解析出来每个部门,所以封装一个NSURL,操作很方便:

NSURL *url = [NSURL URLWithString:@"http://www.baidu.com/s?tn=baiduhome_pg&bs=NSRUL&f=8&rsv_bp=1&rsv_spt=1&wd=NSurl&inputT=2709"];

NSLog(@"Scheme: %@", [url scheme]);

NSLog(@"Host: %@", [url host]);

NSLog(@"Port: %@", [url port]);

NSLog(@"Path: %@", [url path]);

NSLog(@"Relative path: %@", [url relativePath]);

NSLog(@"Path components as array: %@", [url pathComponents]);

NSLog(@"Parameter string: %@", [url parameterString]);

NSLog(@"Query: %@", [url query]);

NSLog(@"Fragment: %@", [url fragment]);

NSLog(@"User: %@", [url user]);

NSLog(@"Password: %@", [url password]);

打印

2012-08-29 15:52:23.781 NSurl[3560:f803] Scheme: http

2012-08-29 15:52:32.793 NSurl[3560:f803] Host: www.baidu.com

2012-08-29 15:52:39.102 NSurl[3560:f803] Port: (null)

2012-08-29 15:52:42.590 NSurl[3560:f803] Path: /s

2012-08-29 15:52:52.516 NSurl[3560:f803] Relative path: /s

2012-08-29 15:53:05.576 NSurl[3560:f803] Path components as array: (  "/",      s  )

2012-08-29 15:53:32.861 NSurl[3560:f803] Parameter string: (null)

2012-08-29 15:53:37.528 NSurl[3560:f803] Query: tn=baiduhome_pg&bs=NSRUL&f=8&rsv_bp=1&rsv_spt=1&wd=NSurl&inputT=2709

2012-08-29 15:53:52.942 NSurl[3560:f803] Fragment: (null)

2012-08-29 15:53:54.539 NSurl[3560:f803] User: (null)

2012-08-29 15:53:57.808 NSurl[3560:f803] Password: (null)

url 组成部分的更多相关文章

  1. URL组成部分详解

    URL组成部分详解 URL是Uniform Resource Locator的简写,统一资源定位符. 一个URL是由以下几部分组成的: scheme://host:port/path/?query-s ...

  2. Flask(4)- URL 组成部分详解

    URL Uniform Resource Locator 的简写,中文名叫统一资源定位符 用于表示服务端的各种资源,例如网页 下面将讲解 Flask 中如何提取组成 URL 的各个部分   URL 组 ...

  3. url组成部分

    协议  eg:http 主机IP地址  eg :端口号8080 项目资源地址  eg:目录名,文件夹名

  4. HTTP之URL的组成部分

    HTTP——URL的组成部分 #################文章全部摘自<HTTP权威指南>########################### 主要是为记录自己学习HTTP的过程! ...

  5. 关于URL的理解

    引言 URL,是统一资源定位符(Uniform Resource Locator)的缩写,一个URL就是一个特定资源在网络上的地址.理论上讲,一个URL指向一个唯一的资源,这个资源可以使一个HTML页 ...

  6. .htaccess 基础教程(四)Apache RewriteCond 规则参数

    Apache模块 mod_rewrite 提供了一个基于正则表达式分析器的重写引擎来实时重写URL请求.它支持每个完整规则可以拥有不限数量的子规则以及附加条件规则的灵活而且强大的URL操作机制.此UR ...

  7. 浅谈SEO-收录(二)

    如何更好的让搜索引擎收录网站中的内容,想要被良好的收录,可以尝试一下几点: 一.机器可读 百度通过一个叫做Baiduspider的程序抓取互联网上的网页, 经过处理后建入索引中,目前只支持读文本,fl ...

  8. Apache中 RewriteRule 规则参数介绍

    Apache中 RewriteRule 规则参数介绍 摘要: Apache模块 mod_rewrite 提供了一个基于正则表达式分析器的重写引擎来实时重写URL请求.它支持每个完整规则可以拥有不限数量 ...

  9. mod_rewrite模块详解

    mod_rewrite模块提供了一个基于规则的(使用正则表达式分析器的)实时转向URL请求的引擎. 支持每个规则可以拥有不限数量的规则以及附加条件规则的灵活而且强大的URL操作机制. 此URL操作可以 ...

随机推荐

  1. 【dfs】P1331 海战

    题目描述 在峰会期间,武装部队得处于高度戒备.警察将监视每一条大街,军队将保卫建筑物,领空将布满了F-2003飞机.此外,巡洋船只和舰队将被派去保护海岸线.不幸的是因为种种原因,国防海军部仅有很少的几 ...

  2. DNA Evolution CodeForces - 828E(树状数组)

    题中有两种操作,第一种把某个位置的字母修改,第二种操作查询与[L, R]内与给出字符串循环起来以后对应位置的字母相同的个数.给出的字符串最大长度是10. 用一个四维树状数组表示 cnt[ATCG的编号 ...

  3. 【redis】redis配置文件参数解析

    redis配置文件路径可以通过info命令找到 Redis配置参数如下daemonize no 默认情况下,redis不是以守护进程的方式运行,一般生产环境,把该项的值更改为 yesrequirepa ...

  4. 学习笔记:fhq-treap

    0. 前置知识:\(treap\)的定义 树堆,在数据结构中也称Treap,是指有一个随机附加域满足堆的性质的二叉搜索树,其结构相当于以随机数据插入的二叉搜索树. ​ >--摘自百度百科 形象化 ...

  5. Vagrant 遇到的问题

    Vagrant was unable to mount VirtualBox shared folders. This is usuallybecause the filesystem "v ...

  6. rdesktop ERROR: CredSSP: Initialize failed, do you have correct kerberos tgt initialized ? Failed to connect, CredSSP required by server

    错误信息: ERROR: CredSSP: Initialize failed, do you have correct kerberos tgt initialized ? Failed to co ...

  7. 洛谷P1712 区间

    题意:给你n个区间,从中选择m个,使得它们有交,且最长与最短区间的差值最小. 解:这道题我想了好多的,nlog²n错的,nlogn错的,最后终于想出nlogn的了...... 把区间按照长度排序,然后 ...

  8. 洛谷P3709 大爷的字符串

    题意:多次求区间众数的出现次数. 解: 这题居然可以莫队...... 首先开个桶.然后还要开个数组,cnt[i]表示出现i次的数有多少个. 然后就可以O(1)修改了. #include <cst ...

  9. 厘摩(centimorgan,cM)到底是啥鬼

    根据维基百科的定义: 厘摩(centimorgan,简写为cM),或称为图距单位(map unit),是遗传连锁中的距离单位,以现代遗传学之父托马斯·亨特·摩尔根的名字命名.1厘摩的定义为两个位点间平 ...

  10. SpringCloud第一弹(入门)

    使用IDEA建立SpringBoot多模块工程不爽啊~算了凑合用吧. 第一步.建立一个POM工程 ..Next ..一路next即可,中间啥也不选 第二步.建立Eureka服务器(这个玩意等同于玩Du ...