http请求详解

1.http协议

    HTTP协议,它规定了在网络中发布,传输和接收html页面的方法。大家都遵循这个协议,就能实现信息传输。

    HTTP请求(Request)消息:客服端发送给服务器的消息

    HTTP响应(Response)消息:服务端返回客户端的消息

2.http协议的工作流程

    (1)客户端连接到web服务器

    一个HTTP客户端,通常是浏览器,与web服务器的HTTP端口(默认80)建立一个TCP套接字连接,如,

  http://www.baidu.com

        (2)发送http请求

       通过TCP套接字,客户端向Web服务器发送一个文本的请求报文,一个请求报文由请求行、请求头部、空行和请求数据4部分组成。

        (3)服务器接受请求并返回HTTP响应

        web服务器解析请求,定义请求资源,服务器讲资源复本写到TCP套接字,由客户端读取,一个响应由状态、响应头部、空行、和响应数据组成。

        (4)释放连接TCP连接

    客户端和服务端建立建立连接,客户端沿着建立好的连接发送请求,服务端返回响应消息信息再断开连接。

        (5)客户端浏览器解析HTML内容

        客户端浏览器首先解析状态行,查看表明是否成功的状态码,然后解析每一个响应头,响应头告知以下为若干字节的HTML文档和文档的字符集。客户端浏览器读取响应数据HTML,根据HTMl语法对其进行格式化,并在浏览器窗口显示。

        例如:在浏览器地址栏输入URL,按下回车之后会经历以下流程:

        1、浏览器向DNS服务器请求解析该URL中的域名所对应的IP地址;

        2、解析出IP地址后,根据该IP地址和默认端口80,和服务器建立TCP连接;

        3、浏览器发出读取文件(URL中域名后面部分对应的文件)HTTP请求,请求该报文作为TCP三次握手的第三个报文数据发送给服务器;

        4、服务器对浏览器请求作出响应,并把对应的HTML文本发送给浏览器;

        5、释放TCP连接;

        6、浏览器将该HTML文本并显示内容;

3.    HTTP请求的状态码

        1xx    指示信息--表示请求已接收,继续处理

        2xx    成功--表示请求已被成功接收,理解,接受

        3xx    重定向--要完成请求必须进行更进一步操作

        4xx    客户端错误--请求有语法错误或请求无法实现

        5xx    服务器端错误--服务器未能实现合法的请求

     常见的状态码

       200    OK    客户端请求成功

        400    Bad Request    客户端请求有语法错误,不能被服务器所理解

        401    Unauthorized    请求未经授权,这个状态码必须和WWW-Authenticate报头域一起使用

        403    Forbidden    服务器收到请求,但是拒绝提供服务

        404    Not    Found    请求资源不存在,输入了错误的URL

        500    Internal   Server    Error    服务器发生不可预期的错误

        503    Server    Unavailable    服务器当前不能处理客户端的请求,一段时间后可能恢复正常 

.jQuery 的AJAX请求

    $.ajax({

                    type: "GET", //GET/POST/PUT/DELETE/HEAD

                    url: "URL", //请求URL地址

                    data: "k=v"或{k:v} //要提交的请求数据

                    beforeSend: fn, //请求发送之前的回调函数

                    success: fn, //响应成功的回调函数

                    error: fn, //响应失败的回调函数

                    complete: fn //响应完成的回调函数,不论成功与失败

})

                响应成功回调顺序:

                    beforeSend => success => complete

                响应失败回调顺序:

                    beforeSend => error => complete;

4.    axios

        axios是一个基于promise用于浏览器和node.js的HTTP客户端;

    axios的特点:

    (1)从浏览器中创建 XMLHttpRequest

    (2)从node.js中发出http请求

    (3)支持promise API

    (4)拦截请求和响应

    (5)转换请求和响应数据

    (6)取消请求

    (7)自动转换json数据

    (8)客户端支持防止CSRF/XSRF

        vue中axios的ajax请求:

          let axios = require('axios')

    axios.type(请求方式)('url',{params:{id:12345}//通过parmas传递进来的参数}).then(function(response);

        console.log(response);

) .catch(function(error){

console.log(error);

});

5. 微信小程序的ajax请求

    wx.request({

    url://路径

    method://请求方式

    dataType://    请求数据类型

    data://传递的参数

    header: {

            'Content-Type': 'xxxx'

}

    success:function(res){

        

}

})

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 218,525评论 6 507
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,203评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,862评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,728评论 1 294
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,743评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,590评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,330评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,244评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,693评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,885评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,001评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,723评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,343评论 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,919评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,042评论 1 270
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,191评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,955评论 2 355

推荐阅读更多精彩内容

  • 之前在生成签名包的时候,都是直接手动使用Android Studio 的Generate Signed APK 进...
    Timor阅读 14,710评论 3 3
  • 在哈尔滨的一个学期又这么过去了,今天,终于放假了。他早上就准备好了行李,恨不得马上回到桂林,虽然是晚上的车… ...
    anteampro阅读 211评论 2 4
  • 长街的尽头埋藏着一匣约定 青葱的记忆里 叶绿碧如玉 花儿红似凤冠巾 春意潺潺流淌 在我们嬉闹的眼波流转 守望的大树...
    小小七阅读 299评论 7 13
  • 小马:呵呵,想想,人和财都一样会面临不可知的意外。未雨绸缪,下雨前备伞嘛。你还在兼职做吗? 哈哈 你觉悟好高啊 ฅ...
    九尾喵丿阅读 123评论 0 2