IOS 开发之NSURL基本操作

IOS 开发之NSURL基本操作

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)

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

(0)

相关推荐

  • iOS开发中使用NSURLConnection类处理网络请求的方法

    NSURLConnection 作为 Core Foundation / CFNetwork 框架的 API 之上的一个抽象,在 2003 年,随着第一版的 Safari 的发布就发布了.NSURLConnection 这个名字,实际上是指代的 Foundation 框架的 URL 加载系统中一系列有关联的组件:NSURLRequest.NSURLResponse.NSURLProtocol. NSURLCache. NSHTTPCookieStorage.NSURLCredentialStor

  • iOS中使用NSURLConnection处理HTTP同步与异步请求

    一.引言 在iOS7后,NSURLSession基本代替了NSURLConnection进行网络开发,在iOS9后,NSURLConnection相关方法被完全的弃用,iOS系统有向下兼容的特性,尽管NSURLConnection已经被弃用,但在开发中,其方法依然可以被使用,并且如果需要兼容到很低版本的iOS系统,有时就必须使用NSURLConnection类了. 二.使用NSURLConnection进行同步请求 对于网络请求分为同步和异步两种,同步是指在请求结果返回之前,程序代码会卡在请求处

  • IOS开发中NSURL的基本操作及用法详解

    NSURL其实就是我们在浏览器上看到的网站地址,这不就是一个字符串么,为什么还要在写一个NSURL呢,主要是因为网站地址的字符串都比较复杂,包括很多请求参数,这样在请求过程中需要解析出来每个部门,所以封装一个NSURL,操作很方便. 1.URL URL是对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示,是互联网上标准资源的地址.互联网上的每个文件都有一个唯一的URL,它包含的信息指出文件的位置以及浏览器应该怎么处理它. URL可能包含远程服务器上的资源的位置,本地磁盘上的文件的路径,甚

  • IOS网络请求之NSURLSession使用详解

    前言: 无论是Android还是ios都离不开与服务器交互,这就必须用到网络请求,记得在2013年做iOS的时候那时候用的ASIHTTPRequest框架,现在重新捡起iOS的时候ASIHTTPRequest已经停止维护,大家都在用AFNetWorking作为首选网络请求框架,之前的ASIHTTPRequest是基于NSURLConnection类实现的,早期的AFNetWorking也是基于NSURLConnection实现,后来iOS9 之后已经放弃了NSURLConnection,开始使用

  • iOS中的NSURLCache数据缓存类用法解析

    在IOS应用程序开发中,为了减少与服务端的交互次数,加快用户的响应速度,一般都会在IOS设备中加一个缓存的机制.使用缓存的目的是为了使用的应用程序能更快速的响应用户输入,是程序高效的运行.有时候我们需要将远程web服务器获取的数据缓存起来,减少对同一个url多次请求.下面将介绍如何在IOS设备中进行缓存. 内存缓存我们可以使用sdk中的NSURLCache类.NSURLRequest需要一个缓存参数来说明它请求的url何如缓存数据的,我们先看下它的CachePolicy类型.    1.NSUR

  • IOS UI学习教程之区分NSBundle和NSURL(读取文件、写入文件)

    本文实例为大家区分NSBundle和NSURL,具体实现内容如下 在项目的工程中添加一个文件,本例程添加的是aa.txt,文件的内容为百度: www.baidu.com,现在要使用NSBundle和NSURL分别去获取内容,代码如下: // 读取文件内容 // 方法1:按照文件路径读取 NSString *pathBundle = [[NSBundle mainBundle]pathForResource:@"aa" ofType:@"txt"]; NSString

  • IOS 开发之NSURL基本操作

    IOS 开发之NSURL基本操作 NSURL其实就是我们在浏览器上看到的网站地址,这不就是一个字符串么,为什么还要在写一个NSURL呢,主要是因为网站地址的字符串都比较复杂,包括很多请求参数,这样在请求过程中需要解析出来每个部门,所以封装一个NSURL,操作很方便: NSURL *url = [NSURL URLWithString:@"http://www.baidu.com/s?tn=baiduhome_pg&bs=NSRUL&f=8&rsv_bp=1&rsv

  • 实例详解IOS开发之UIWebView

    iOS开发之UIWebView 是本文要介绍的内容,UIWebView是iOS sdk中一个最常用的控件.是内置的浏览器控件,我们可以用它来浏览网页.打开文档等等.这篇文章我将使用这个控件,做一个简易的浏览器.如下图: 我们创建一个Window-based Application程序命名为:UIWebViewDemo UIWebView的loadRequest可以用来加载一个url地址,它需要一个NSURLRequest参数.我们定义一个方法用来加载url.在UIWebViewDemoViewC

  • IOS开发之UIScrollView实现图片轮播器的无限滚动

    IOS开发之UIScrollView实现图片轮播器的无限滚动 简介 在现在的一些App中常常见到图片轮播器,一般用于展示广告.新闻等数据,在iOS内并没有现成的控件直接实现这种功能,但是通过UIScrollView的允许分页设置,可以实现滚动轮播的功能. 轮播原理 UIScrollView对象有pagingEnable成员,如果设置为YES,那么每一个scrollView尺寸这么大的区域就会被当作一页,在滚动时会根据滚动的比例自动计算应该切换到哪一页. 无限滚动原理 要实现无限滚动,需要额外的两

  • IOS开发之@property的详细介绍

    IOS开发之@property的详细介绍 在类中定义属性时,总会使用到@property进行定义,下面就来说说@property的使用. 在使用过程中,如果需求公开且在其他类中使用时,通常会定义在.h头文件中:而如果只是该类自已需要使用,这时则会定义 在.m实现文件中. 使用格式 @property (参数1, 参数2, 参数3, ...) 参数类型 参数名称 参数包括三个种类,七个属性,如下图所示. 在使用过程中,有几点需要注意: (1)原子性定义中,如果没有涉及到多线程环境时,通常不会使用默

  • IOS 开发之swift中UIView的扩展使用的实例

    IOS 开发之swift中UIView的扩展使用的实例 扩展类代码: import UIKit extension UIView { // MARK : 坐标尺寸 var origin:CGPoint { get { return self.frame.origin } set(newValue) { var rect = self.frame rect.origin = newValue self.frame = rect } } var size:CGSize { get { return

  • iOS开发之UITableView与UISearchController实现搜索及上拉加载,下拉刷新实例代码

    废话不多说了,直接给大家贴代码了. 具体代码如下所示: #import "ViewController.h" #import "TuanGouModel.h" #import "TuanGouTableViewCell.h" #define kDeviceWidth [UIScreen mainScreen].bounds.size.width #define kDeviceHeight [UIScreen mainScreen].bounds.

  • IOS 开发之swift中手势的实例详解

    IOS 开发之swift中手势的实例详解 手势操作主要包括如下几类 手势 属性 说明 点击 UITapGestureRecognizer numberOfTapsRequired:点击的次数:numberOfTouchesRequired:点击时有手指数量 设置属性 numberOfTapsRequired 可以实现单击,或双击的效果 滑动 UISwipeGestureRecognizer direction:滑动方向 direction 滑动方向分为上Up.下Down.左Left.右Right

  • IOS 开发之 UITextField限制字数的方法

    IOS 开发之 UITextField限制字数的方法 在输入东西的时候,如果想限制最大字数,可以用下面方法: 实例代码: - (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string; { if ([string isEqualToString:@"\n"]) { return YES; } NSSt

  • IOS 开发之Swift 元组的实例详解

    IOS 开发之Swift 元组的实例详解 元组是多个值组合而成的复合值.元组中的值可以是任意类型,而且每一个元素的类型可以是不同的. 元组声明 //普通声明 var point = (5,2) var httpResponse = (404, "Not Found") //定义类型声明 var point2 : (Int,Int,Int) = (10,5,2) var httpResponse2 : (Int,String) = (200,"ok") 元组解包 va

  • IOS 开发之UITableView 删除表格单元写法

    IOS 开发之UITableView 删除表格单元写法 实现代码: - (void)tableView:(UITableView *)aTableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath { if (editingStyle == UITableViewCellEditingStyleDelete) { NSDiction

随机推荐