这章分享下ajax、json、jsonp的学习记录,不得不说这真是些令人激动的技术。

推荐文章:

https://segmentfault.com/a/1190000012469713

http://www.ruanyifeng.com/blog/2016/04/cors.html

JSON

JSON可以理解为一种数据形式,

它有三种类型的值:

1、  简单值 字符串、数值、布尔和null

2、  对象 表示一组有序的键值对,键是字符串,值可以是简单类型和复杂数据类型。

3、  数组 表示一组有序的值的列表,可通过索引访问其中的值,数组值可以是JSON支持的任意类型。

Ajax

AJAX全称为“Asynchronous JavaScript and XML”(异步JavaScript和XML),是一种创建交互式网页应用的网页开发技术。传统web应用浏览器在已加载页面中发与服务端交互时(发送小请求)必须等待并刷新页面,而有了Ajax则无需刷新页面也能获得请求数据并展示。

它的核心对象是XMLHttpRequest, 它能与Web服务器进行异步数据通信,然后用 Javascript把交互数据通过操作DOM进行动态显示及交互。
因为同源策略存在,一般服务端不允许跨域请求,但也可通过设置允许options请求(跨域请求)。

跨域请求分为简单请求和非简单请求,简单请求请求类型为get、post、head,请求头信息不超过Accep、Accept-Language、Content-language、Last-Event-ID、Content-Type类型的请求。其他的为非简单请求。

浏览器对这两种请求的处理是不一样的。

JSONP

JSONP的作用是与服务端交互并动态的展示数据而不用刷新页面,并且能够跨域请求。JSOP的原理来自<script>标签中的src属性具有可跨域的特性以及<script>支持异步的特性实现了数据动态的交互。

当我们创建操作dom生成<script>标签时,会对标签src属性的连接进行GET请求,此时我们可以带上请求参数和回调函数,对面接受到参数对参数进行处理并生成js文件,js文件解析出回调函数并调用它,回调函数接受到数据处理完的通过DOM操作与页面进行交互。因此一次互动的过程就完成了。

ajax、json、jsonp的更多相关文章

  1. Ajax--PHP+JQuery+Ajax解析json、XML数据、加载页面

    一.JQuery+Ajax用get.post方式提交和请求数据 知识要点: $('#userName').blur(function () { var txt = $(this).val(); $.a ...

  2. C#.NET序列化XML、JSON、二进制微软自带DLL与newtonsoft(json.net)

    序列化是将对象转换成另一种格式(XML.json.二进制byte[]) JSON序列化 .NET中有三种常用的JSON序列化的类,分别是: Newtonsoft.Json.JsonConvert类(推 ...

  3. IOS学习:ios中的数据持久化初级(文件、xml、json、sqlite、CoreData)

    IOS学习:ios中的数据持久化初级(文件.xml.json.sqlite.CoreData) 分类: ios开发学习2013-05-30 10:03 2316人阅读 评论(2) 收藏 举报 iOSX ...

  4. Java 常见数据交换格式——xml、json、yaml

    目录 数据交换格式介绍 XML 使用DOM方式解析 使用SAX方式解析 使用DOM4J方式解析 使用JDOM方式解析 JSON 使用JSONObject方式将数据转换为JSON格式 利用JSONObj ...

  5. Python3 Pandas的DataFrame格式数据写入excle文件、json、html、剪贴板、数据库

    Python3 Pandas的DataFrame格式数据写入excle文件.json.html.剪贴板.数据库 一.DataFrame格式数据 Pandas是Python下一个开源数据分析的库,它提供 ...

  6. tablib把数据导出为Excel、JSON、CSV等格式的Py库(写入数据并导出exl)

    #tablib把数据导出为Excel.JSON.CSV等格式的Py库 #python 3 import tablib #定义列标题 headers = ('1列', '2列', '3列', '4列', ...

  7. js导出到word、json、excel、csv

    tableExport.js ///*The MIT License (MIT) //Copyright (c) 2014 https://github.com/kayalshri/ //Permis ...

  8. Python中xml、字典、json、类四种数据的转换

    最近学python,觉得python很强很大很强大,写一个学习随笔,当作留念注:xml.字典.json.类四种数据的转换,从左到右依次转换,即xml要转换为类时,先将xml转换为字典,再将字典转换为j ...

  9. Python常用配置文件ini、json、yaml读写总结

    开发项目时,为了维护一些经常需要变更的数据,比如数据库的连接信息.请求的url.测试数据等,需要将这些数据写入配置文件,将数据和代码分离,只需要修改配置文件的参数,就可以快速完成环境的切换或者测试数据 ...

随机推荐

  1. Teamviewer远程控制

    设置无人值守的固定密码,不使用随机码进行远程控制访问 设置好密码之后,以后只要通过Teamviewer生成的固定ID,再加上你设置的密码就可以随时进行远程访问了,而不需要使用生成的随机码.

  2. Spring Cloud(Dalston.SR5)--Config 集群配置中心-加解密

    实际应用中会涉及很多敏感的数据,这些数据会被加密保存到 SVN 仓库中,最常见的就是数据库密码.Spring Cloud Config 为这类敏感数据提供了加密和解密的功能,加密后的密文在传输给客户端 ...

  3. python 将本地目录暴露为http服务

    python3 nohup python3 -m http.server 8080 &

  4. GDI与GDI+性能比较

    编写程序对GDI和GDI+绘制进行了比较,经过比较,GDI相对GDI+还是有一些性能优势的. 同时比较了每次绘制创建TGPGraphics对象和共用一个TGPGraphics对象的情况,两者性能相差不 ...

  5. R常用操作

    ##检查数据的维度 dim(iris) ##显示数据集的内部结构 str(iris) ##显示数据集的属性 attributes(iris) ##显示数据集中每个变量的分布情况 summary(iri ...

  6. 京东饭粒捡漏V1.0.7

    20180614 更新 V1.0.71.修改捡漏策略 功能介绍1.京东商城专用,支持饭粒模式下单,自己获得京豆返利 2.捡漏模式:帮助用户监控抢购商品,有库存的时候进行抢单,主要是通过添加商品ID - ...

  7. windows下的拷贝利器robocopy

    robocopy xxcopy http://www.cnblogs.com/zhanglei1371/p/6724167.html [转载]robocopy的用法 经常进行文件管理操作的朋友们,不满 ...

  8. qcom,msm8996-pinctrl.txt

    Qualcomm Technologies, Inc. MSM8996 TLMM block This binding describes the Top Level Mode Multiplexer ...

  9. Python绘图的颜色设置

    (转载):Python中的matplotlib函数中的颜色选取 转载链接:https://www.cnblogs.com/darkknightzh/p/6117528.html 原文内容:完全出自于自 ...

  10. android 中activity重启的方法

    private void reLoadActivity(){ Intent intent = new Intent(context, SettingsActivity.class); intent.s ...