美文网首页
7.31 HTTP 请求

7.31 HTTP 请求

作者: jayck | 来源:发表于2016-08-02 20:47 被阅读15次

OSI网络7层协议

应用层 ························· 最上层

会话层

表示层

传输层

网络层

数据链路层

物理层 网卡,设备 ········ 最下层


相应状态码

1xx: Information 信息

2xx:成功获取到数据

3xx:重定向 (不会直接帮你解决,你先去另一个地方找某某某之类的)

4xx: 请求错误 404 not found 最常见

5xx:服务器错误


百分号%转义

将非法字符转换成合法字符

HTTP 80 端口

FTP 20/21 端口

cup 寄存器

缓存(一级,二级,三级)

内存:易失性 断电丢失

闪存:相当于电脑的硬盘,断电不丢失数据,容量大,速度慢


http请求的写法:

import UIKit

class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
        
        let path = "http://www.baidu.com"
        let url = NSURL(string: path)!
        
        let task = NSURLSession.sharedSession().dataTaskWithURL(url) { (data, response, error) in
            //data: 下载到的数据, NSdata
            //response 响应结果, status code以及header field头文件,
            //NSURLResponse, NSHTTPURLResponse
            //error:请求是否出错,如果为nil,请求没出错,NSError
            
            //连接到之前可能会产生错误,可能服务器挂了,可能网络不稳定等
            //所有要写一个解决问题的判断句
            
            if let e = error{
                print("网络提示: \(e.localizedDescription)")
            }
            else {
                //没有错
                if let httpResponse = response as?
                    NSHTTPURLResponse{
                    //服务器有相应
                    
                    if httpResponse.statusCode == 404 {
                        //404 Not Found,URL对应资源不存在
                    }
                    else if httpResponse.statusCode == 200{
                        //请求成功,获取到了数据
                        if let d = data {
                            //需要进一步处理,也许格式不同
                            //将数据转换为UTF-8格式的字符串
                            let html = NSString(data: d, encoding: NSUTF8StringEncoding)
                            print(html)
                        }
                    }
                }
                
            }
            print("请求结果: \(data!.length)")
        }
        task.resume()
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }


}

iOS默认只允许https的请求

可以修改info.plist中的文件来允许http

相关文章

  • 7.31 HTTP 请求

    OSI网络7层协议 应用层 ··········...

  • 【HTTP】HTTP请求

    1、HTTP协议通信流程: 2、HTTP请求包含内容 一个HTTP请求报文由请求行(request line)、请...

  • 动脑学院架构篇-HTTP请求、响应报文格式

    【HTTP】HTTP请求、响应报文格式 HTTP请求报文格式: HTTP请求报文主要由请求行、请求头部、请求数据3...

  • IDEA自带http请求工具

    编辑http请求文件(文件名后缀为.http) GET请求 POST请求 执行http请求 查看http结果

  • HTTP

    HTTP简介 HTTP请求格式 HTTP规定,HTTP请求由如下3部分构成 请求方法、URI和HTTP的版本 请求...

  • HTTP协议报文及Chrome Network常用功能

    HTTP协议报文 Http协议报文分为【Http请求报文】和【Http响应报文】 HTTP请求报文 Http请求报...

  • HTTP 请求

    Code=-999 错误400 ------参数错误网络请求出现Code=-1022

  • http请求

    Request 请求行。 Method+URL+Version 请求头。 字段名+字段值----+请求内容 R...

  • http请求

    ajax原生 angular rxjs

  • http 请求

网友评论

      本文标题:7.31 HTTP 请求

      本文链接:https://www.haomeiwen.com/subject/rufqsttx.html