什么是HTTP请求?

就是从用户的浏览器端向服务器端发送请求

一个HTTP请求一般由四个部分组成

1.HTTP请求的方法或者动作,比如GET或者POST请求

2.请求的URL,也就是请求的地址

3.请求头,包含一些客户端环境信息,身法验证信息等等

4.请求体,也就是请求正文,正文中可以包含客户提交的查询字符串信息,表单信息等等

GET请求方式多用与信息的获取也就是查询数据,因为其是可见的,是通过url来传递数据的,所以由字数2000字符的限制

POST请求较为安全,是向服务器发送信息,就是从表单发送一些数据或者修改删除数据,同时发送信息也是没有限制的

HTTP响应一般由三个部分组成

1.一个数字和文字组成的状态码,用来显示请求是成功还是失败

2.响应头,包含一些服务器类型,日期时间,内容类型,长度等等。

3.响应体,就是响应的正文内容

一个完整的HTTP请求过程应该由七个步骤

1.建立TCP连接

2.Web浏览器向Web服务器发送请求命令

3.Web浏览器发送请求头信息

4.Web服务器应答(响应)

5.Web服务器发送应答头信息

6.Web服务器向浏览器发送数据

7.Web服务器关闭TCP连接

 通过XHR对象发送一个HTTP请求

open(method,url,async)

open (请求方式get/post,请求地址 ,异步/同步)

调用open方法就可以调用HTTP请求
 send(string)

string(参数)

get请求可以不填写,post方法需要填写参数

通过send方法把请求发送到服务器

创建XHR对象,然后调用其方法

request.open("GET","newPHP.php",true)

request.send()

request.open("POST","newPHP.php",true)

//设置HTTP头信息,告诉Web服务器,要发送一个表单信息

request.setRequestHeader("Content-Type","application/x-www-form-urlencoded")

request.send("name=陈弈迅&sex=男");

 
XHR获取服务器响应

通过XHR内的方法来获取

responseText:获得字符串形式的响应数据

responseXML:获得XML形式的数据

//通过Json的方式则更为简单,Json下次再写

status和 statusText:以数字和文本的形式返回HTTP状态码

getAllResponseHeader():获取所有响应的报头

getResponseHeader():查询响应中某个字段的值

readyState:在响应返回成功的时候得到通知

属性 = 0:请求未初始化,open还未被调用

     1:服务器连接已经建立,open已经被调用

     2:请求已经接收(已经接收到头信息)

     3:请求处理中(接收到响应主题)

     4:请求已经完成,响应已经完成

通过onreadystatechane监听事件,来确认服务器响应是否完成

 
 
 
 

Ajax_HTTP请求以及响应的更多相关文章

  1. Django底层剖析之一次请求到响应的整个流程

    As we all know,所有的Web应用,其本质上其实就是一个socket服务端,而用户的浏览器就是一个socket客户端. #!/usr/bin/env python #coding:utf- ...

  2. 初入网络系列笔记(4)HTTP请求和响应

    一.借鉴说明,本博文借鉴以下博文 1.starok,HTTP必知必会,http://www.cnblogs.com/starstone/p/4890409.html 2.CareySon,HTTP协议 ...

  3. http协议(二)请求和响应报文的构成

    http协议用于客户端和服务器之间的通信,请求访问资源的一方称为客户端,而提供资源响应的一方称为服务器端. 下面就是客户端和服务端之间简单的通信过程 PS:请求必须从客户端建立通信,服务端没收到请求之 ...

  4. iOS开发——网络篇——HTTP/NSURLConnection(请求、响应)、http响应状态码大全

    一.网络基础 1.基本概念> 为什么要学习网络编程在移动互联网时代,移动应用的特征有几乎所有应用都需要用到网络,比如QQ.微博.网易新闻.优酷.百度地图只有通过网络跟外界进行数据交互.数据更新, ...

  5. struts2基础——请求与响应、获取web资源

    一.请求与响应 Action1.含义:(1) struts.xml 中的 action 元素,也指 from 表单的 action 属性,总之代表一个 struts2 请求.(2) 用于处理 Stru ...

  6. 浏览器-Tomcat服务器-请求与响应

    浏览器访问服务器,本质就是请求资源. 比如请求静态资源:index.html,我们在浏览器地址栏输入:www.a.com/index.html,浏览器为了支持HTTP协议,发送的数据必须符合HTTP协 ...

  7. 写一个ActionFilter检测WebApi接口请求和响应

    我们一般用日志记录每次Action的请求和响应,方便接口出错后排查,不过如果每个Action方法内都写操作日志太麻烦,而且客户端传递了错误JSON或XML,没法对应强类型参数,请求没法进入方法内, 把 ...

  8. AngularJS 用 Interceptors 来统一处理 HTTP 请求和响应

    Web 开发中,除了数据操作之外,最频繁的就是发起和处理各种 HTTP 请求了,加上 HTTP 请求又是异步的,如果在每个请求中来单独捕获各种常规错误,处理各类自定义错误,那将会有大量的功能类似的代码 ...

  9. Http请求与响应格式

    原文:http://www.cnblogs.com/z941030/p/4699779.html Http协议对浏览器发出的Request格式以及对Web服务器发出的Response格式有具体的规定. ...

随机推荐

  1. Debian7安装msf

      安装metasploit curl https://raw.githubusercontent.com/rapid7/metasploit-omnibus/master/config/templa ...

  2. Luogu【P3609】蹄子剪刀布(DP+滚动数组)

    题目链接 (突然高兴 又一次瞬间想出转移方程并一遍A掉!!233333(虽然从二叉苹果树那题开始我就发现我的方程好像跟别人不大一样 (所以这样就可以名正言顺的水题解了 设f[i][j][k]表示考虑F ...

  3. [UOJ#127][BZOJ4195][NOI2015]程序自动分析

    [UOJ#127][BZOJ4195][NOI2015]程序自动分析 试题描述 在实现程序自动分析的过程中,常常需要判定一些约束条件是否能被同时满足. 考虑一个约束满足问题的简化版本:假设x1,x2, ...

  4. BZOJ 1016 [JSOI2008]最小生成树计数 ——Matrix-Tree定理

    考虑从小往大加边,然后把所有联通块的生成树个数计算出来. 然后把他们缩成一个点,继续添加下一组. 最后乘法原理即可. 写起来很恶心 #include <queue> #include &l ...

  5. P1736 创意吃鱼法 (动态规划)

    题目描述 回到家中的猫猫把三桶鱼全部转移到了她那长方形大池子中,然后开始思考:到底要以何种方法吃鱼呢(猫猫就是这么可爱,吃鱼也要想好吃法 ^_*).她发现,把大池子视为01矩阵(0表示对应位置无鱼,1 ...

  6. 【倒跑并查集维护连通块】NCPC 2016 A. Artwork

    http://codeforces.com/gym/101550/attachments [AC] #include<bits/stdc++.h> using namespace std; ...

  7. noip2017爆炸记——题解&总结&反省(普及组+提高组)

    相关链接: noip2018总结 noip2017是我见过的有史以来最坑爹的一场考试了. 今年北京市考点有一个是我们学校,我还恰好被分到了自己学校(还是自己天天上课的那个教室),于是我同时报了普及提高 ...

  8. 【bzoj1483】[HNOI2009]梦幻布丁 set

    [bzoj1483][HNOI2009]梦幻布丁 Description N个布丁摆成一行,进行M次操作.每次将某个颜色的布丁全部变成另一种颜色的,然后再询问当前一共有多少段颜色.例如颜色分别为1,2 ...

  9. 快速掌握RabbitMQ(二)——四种Exchange介绍及代码演示

    在上一篇的最后,编写了一个C#驱动RabbitMQ的简单栗子,了解了C#驱动RabbitMQ的基本用法.本章介绍RabbitMQ的四种Exchange及各种Exchange的使用场景. 1 direc ...

  10. P3378 堆【模板】 洛谷

    https://www.luogu.org/problem/show?pid=3378 题目描述 如题,初始小根堆为空,我们需要支持以下3种操作: 操作1: 1 x 表示将x插入到堆中 操作2: 2 ...