13 - NSURLConnection

时间:2023-03-08 20:56:14

一、互联网

基本概念:

HTTP协议

统一标准获取网络资源(其他设备上的东西)

本机 -> 远程服务器(计算机)

URL(http有格式的字符串)

本机 <- 远程服务器(计算机)

File

NSURLConnection

干嘛用?

更高功能的发送请求

能查进度

网页的类型:

静态:请求的资源是远端服务器本地保存的文件

动态:请求的资源是远端服务器代码生成的文件

远端服务器技术

干嘛用?根据数据拼接HTML

应用程序网络通信架构

B/S   Browser/Server  浏览器/服务器 基于web网页技术开发的程序 跨平台

C/S   Client/Server   客户端/服务器 基于本地原生态技术开发的程序 高功能:完整的API调用权限

技术关联

URL

+ file://本地文件

+ http://http是请求网络的资源,通过url请求,内部是用socket(TCP)做的,在此基础上建立一些请求和回复的原则

+ 请求

+ url地址

+ 回复

+ html

+ jpg

+ xml

+ json

GET/POST

http请求和URL请求一样 都可以增加参数

?参数名=参数值&参数名=参数值

GET/POST是http请求的两种不同的模式

GET模式传输参数在url地址上传输

POST 模式传输参数在HTTPRequest请求体内传输

使用NSURLConnection构建get请求

http://box.zhangmen.baidu.com/x?op=12&count=1&title=Grouplove$$$$$$

http://zhangmenshiting.baidu.com/data2/music/34170916/2011444002.mp3?xcode=fafad92f0e09f6d1256940d1aa1161655c17457a16cb8adf&mid=0.99187206394155

URL中文问题

所有的中文/空格都必须转码

用字符编码把中文/空格转换为16进制的0-9A-F

POST传参

http://webservice.webxml.com.cn/WebServices/TrainTimeWebService.asmx/getDetailInfoByTrainCode

request.HTTPBody在这里传参

网络程序资源

方法名 参数 返回值

方法名

http://box.zhangmen.baidu.com/x

参数

op=12&count=1&title=金箍棒$$$$$$

返回值

请求返回的文件

名词

API/接口/协议

特指一个描述基于http调用的文档

查询用户基本信息接口

地址http://service.weibo.com/user/getUserInfo

参数id用户id

返回值数据格式模板

<xml>

<user id="2355">

<name></name>

<viplevel></viplevel>

<photoPath><![CDATA[

http://img.....

]]></photoPath>

</user>

</xml>

Webservice

是将业务逻辑封装在服务器端

并且提供统一的跨平台的访问和返回值

访问就是url

返回值就是xml

不同的终端都可以拼凑url并通过get/post提供参数去调用webservice

而webservice返回值的xml经过本地语言解析变为本地语言的对象

作业、

1. 音乐查询

有一个输入框

和一个tableview

输入框内输入歌曲名

点击键盘上的搜索

发出请求查baidu的音乐的api

查歌

通过tableview显示所有的可用的歌曲源

点击其中一个歌曲源

跳转到界面2

界面2下载歌曲

下载完了之后 就播放

存在Document