URL:统一资源定位符

网络的七层协议:网卡 驱动  网络层(ip)  传输层(tcp udp) 会话层( )  应用层(http、)
restful表征状态转移(一种表征架构)
CURD 增删改查   
post改  get查  put增  delete删
 
head没有响应主体
get系:get  head delete 没有请求主体
 
get系和post系区别
get系没有请求主体
get系会被缓存
get系有大小限制,最大不能超过8k,但是一般情况超过4k就用post了(因为get没有主体,数据都是拼接到url后面,因为浏览器对url有大小限制) post都放在了请求主体里所以没有大小限制
发送的数据,get系是明文发送,post系会把data放到请求主体里,无法看见
 
socket  管即时通讯的
通过http建立连接   http  connection  响应码 101
通过tcp进行交互
 
 
delete  put 返回码是202
http status code 状态码
 
 200 成功 服务器端和客户端都成功
 202 接受
 
301  永久转移   
302  临时转移  临时重定向
负载均衡  集群  多台服务器间的跳转
303永久重定向 、307 临时重定向
304  走服务器缓存  not modified
 
响应首部
     last-modified 最后一次修改的时间  gmt标准时      浏览器先找last-modified,不存在就会找etag
    atag 文件修改一次 时间就变一次  通过sha1算法 散列值   
 
请求头部
if-modified-since   GMT时间
if-none-match   一串通过检验内容进行sha(1|2)算法的字符串
 
 
cache-control   second 缓存的是秒数
expires  gmt data 缓存到什么时候  
 
 
400 参数错误 bad request
401 未认证 not authoriticated
403 禁止访问  没有权限  forbidden
404  未找到  not found
417 资源过大  
 
500 服务器内部错误  internal server error
502 
503 并发太高 (同时处理的太多) 
 
 
MIME type   告诉浏览器以什么格式处理数据  格式 xxx/xxx
text/html
text/css
text/javaScript
img/png
img/jpg
img/gif
application/json
application/octet-stream
 
 
url格式
http  端口80
https  端口443
ftp  文件传输协议
smtp  传输邮件的
telnet
 
                        账号 密码              域名(主机名)  端口         路径
scheme://username:password    @hostname:     port/     path?querystring#hash
 
http  https   ftp  协议
 
 
文件上传的mime-type是multi-part/form-data
传二进制用 application/octet-stream
 
ArrayBuffer  透明的
Blob  不透明的
 
 
1.1和2.0的主要区别?
(1)多路复用
(2)首部压缩
(3)服务器推送
 
 
console.time('a');
for(var i=0;i<1000;i++){};
console.timeEnd('a');
console.tab([{name:'asde',age:12},{name:'asde',age:12},{name:'asde',age:12}])
console.dir();输出某个对象的详情
 
 
 
 
 
 
 使用jQuery
        $.ajax({
            url: "test.txt",
            type: "get",
            dataType: "json",//text
            async: true,
            success: function (data) {
                //data就是我们请求的结果
                console.log(data);
            },
            error: function () {
    
            }
        });
 
        $.ajax({
            url: "test.txt",
            type: "post",
            data: {
                name: "12"
            },
            dataType: "json",
            success: function (data) {
                //data就是我们请求的结果
                console.log(data);
            }
        });
 
    使用原生的JS
          var createXHR = (function () {
            if ("XMLHttpRequest" in window) {
                return function () {
                    return new XMLHttpRequest();
                }
            }
            if (new ActiveXObject("Microsoft.XMLHTTP")) {
                return function () {
                    return new ActiveXObject("Microsoft.XMLHTTP");
                }
            }
            if (new ActiveXObject("Msxml2.XMLHTTP")) {
                return function () {
                    return new ActiveXObject("Msxml2.XMLHTTP");
                }
            }
            if (new ActiveXObject("Msxml3.XMLHTTP")) {
                return function () {
                    return new ActiveXObject("Msxml3.XMLHTTP");
                }
            }
        })();
        var xhr = createXHR();
        xhr.open("get", "test.txt");
        xhr.onreadystatechange = function () {
            if (this.readyState === 4 && /^2\d{2}$/.test(this.status)) {
                var value = this.responseText;
                console.log(value);
            }
        };
        xhr.send();//"post请求中如果需要传递给后台数据,我们需要把JSON格式的字符串放到里"
 
    非同源策略
        function aaaaa(data) {
            console.log(data);
        }
    前端:利用<script>不存在跨域的概念(我可以在自己的网页中引入任何域名下的JS文件),我们通过<script>的src属性,向后台发送一个请求,并且把一个函数的名字(aaaaa)传递给后台(一般来说都是?callback=aaaaa)
    后台:后台会把传递进来的参数进行解析,获取到你的方法名aaaaa,并且执行这个方法,把所有需要给你的数据传递给aaaaa
    我们aaaaa中定义的形参data中其实就已经存储了我们需要的数据,接下来在做数据解析、数据绑定即可
</script>
<!--<script type="text/javascript"-->
<script type="text/javascript">
        $.ajax({
            type: "get",
            dataType: "jsonp",
            jsonpCallback: "a",
            success: function (data) {
                console.log(data);
            }
        });
 
    $.ajax({
        type: "get",
        dataType: "jsonp",
        jsonp: "cb",//->修改callback这个属性名为cb
        jsonpCallback: "aa",//->修改cb传递值的名字为aa
        success: function (data) {
            console.log(data);
        }
    });
 
 
 
 
 
 
 个人整理,转载请标明出处
 
 
 

关于Ajax知识点小节的更多相关文章

  1. day 6 - 1 知识点小节

    python2 与 python3 的区别 1. print.input.生成器 #python2 print() print 'abc' range() xrange() 生成器 raw_input ...

  2. Ajax 知识点

    AJAX 即"Asynchronous Javascript And XML"(异步JavaScript和XML) Ajax 不是某种编程语言,只是一种在无需重新加载整个网页的情况 ...

  3. ajax知识点总结

    一.JSON JSON是JavaScript  Object  Notation 的首字母缩写,单词的意思是javascript对象表示法,这里说的json指的是类似于javascript对象的一种数 ...

  4. ajax知识点

    什么是AJAX? AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML). AJAX 不是新的编程语言,而是一种使用现有标准的新方法. ...

  5. django jquery ajax 知识点

    示例: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 <div id='d'>1</div> <div> <div id='i1' nam ...

  6. ajax知识点及正则表达式总结

    一.JSON JSON是JavaScript  Object  Notation 的首字母缩写,单词的意思是javascript对象表示法,这里说的json指的是类似于javascript对象的一种数 ...

  7. Ajax知识点复习

    1. ajax是什么? * asynchronous javascript and xml:异步的js和xml * 它能使用js访问服务器,而且是异步访问! * 服务器给客户端的响应一般是整个页面,一 ...

  8. ajax知识点补充

    读取服务器上的数据: HTML: <!DOCTYPE HTML><html><head><meta charset="utf-8"> ...

  9. Ajax知识点整理

    一.javascript原生Ajax 1.简介 Ajax是Asynchronous JavaScript+XML(异步JavaScript和XML)的缩写. 该名称诞生于XML还是数据传输首选格式的时 ...

随机推荐

  1. Code First Migrations更新数据库结构的具体步骤

    一.打开程序包管理器控制台 当你的实体模型与数据库架构不一致时,引发以下错误:The model backingthe 'SchoolContext' context has changed sinc ...

  2. 数据结构-Vector

    自定义Vector实现: /////////////////////////////////////////////////////////////////////////////// // // F ...

  3. Linux-编译器gcc/g++编译步骤

    gcc和g++现在是gnu中最主要和最流行的c&c++编译器.g++是c++的命令,以.cpp为主:对于c语言后缀名一般为.c,这时候命令换做gcc即可.编译器是根据gcc还是g++来确定是按 ...

  4. POJ 1777 mason素数

    题目大意: 给定数列 a1 , a2 , ... , an 希望找到一个  N = sigma(ai^ki)  , (0<=ki<10) ,ki可随自己定为什么 只要保证N的因子和可以表示 ...

  5. 由于lightdm.conf 错误无法进入ubuntu 的办法

    由于自己向默认登录GNOME桌面,所以修改了lightdm,由于参数错误,结果无法启动桌面? 这是需要进入shell界面: 1.选择cancel ,如果虚拟机下无法点击cancel按钮,可以使用快捷键 ...

  6. vi编辑器选项

    Vi编辑器有一些选项设置可以帮助人们更好的使用. 在vi中选项分为两种: 1.  开关选项,如果要打开这类选项就使用ex命令——:set 选项:如果要关闭这类选项就是用ex命令——:set  no选项 ...

  7. Date的转换

    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); String str = sdf.format(一个date对 ...

  8. Quartz 2D--长方形和线条绘图

    今天原本想模仿2048 游戏的. 但是在设计背景环境时,涉及到绘图的知识!于是就开始对绘图进行了一翻学习. 若想自己绘图必须 写自己的View(继承UICView):然后重写UIView 中的 dra ...

  9. MongoDB应用篇(转)

    一.高级查询 1. 查询操作符 1.1 比较操作符$gt,$lt,$gte,$lte 实例: select * from things where field<value -- 等价于db.th ...

  10. hdu 1069

    //Accepted 264 KB 0 ms //每种block只有三种方法,且每种放法至多放一次 //规定三条边的顺序后 //把所有的block按x递增排序,x相同则按y递增排序 //然后dp // ...