1、关于JSON结构
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。**它使得人们很容易的进行阅读和编写。同时也方便了机器进行解析和生成。它是基于 JavaScript Programming Language , Standard ECMA-262 3rd Edition - December 1999 的一个子集。 JSON采用完全独立于程序语言的文本格式,但是也使用了类C语言的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等)。这些特性使JSON成为理想的数据交换语言。
1.1Object格式:
{id:22,name:"刘翔"}
1.2 Array数组格式:
[100,"张三","男"]
1.3 嵌套结构
[{"教师":[{"张三":[]},
{"李四":[{"id":1002,"age":23,"like":"basketball"}]},
{"赵五":[]}
]
}
]
2.跨域
2.1 同源策略
同源策略是一个重要的安全策略,它用于限制一个origin的文档或者它加载的脚本如何能与另一个源的资源进行交互。它能帮助阻隔恶意文档,减少可能被攻击的媒介。
2.1.1同源定义:
如果两个 URL 的 protocol、port (en-US) (如果有指定的话)和 host 都相同的话,则这两个 URL 是同源。这个方案也被称为“协议/主机/端口元组”,或者直接是 “元组”。(“元组” 是指一组项目构成的整体,双重/三重/四重/五重/等的通用形式)。
2.1.2同源练习:
下表给出了与 URL http://store.company.com/dir/page.html 的源进行对比的示例:
2.2 跨域解决策略
2.2.1 JSONP
JSONP(JSON with Padding)是JSON的一种“使用模式”,可用于解决主流浏览器的跨域数据访问的问题。由于同源策略,一般来说位于 server1.example.com 的网页无法与不是 server1.example.com的服务器沟通,而 HTML 的
核心知识: 利用 <script src属性=“获取远程服务器数据”> 实现跨域访问.
2.2.1 CORS跨域资源共享跨域资源共享( CORS ) 是一种基于HTTP 标头的机制,它允许服务器指示浏览器应允许从其加载资源的任何其他来源(域、方案或端口)。CORS 还依赖于浏览器向托管跨域资源的服务器发出“预检”请求的机制,以检查服务器是否允许实际请求。在该预检中,浏览器发送指示 HTTP 方法的标头和将在实际请求中使用的标头。
解释:
跨域资源共享( CORS ) ,通过Http 响应头 信息标识哪些网址可以访问服务器.现在几乎所有的浏览器默认支持CORS. 在请求之前会进行"预检" 如果预检成功,则在一段时间之后无需校验(30分钟).
2.2.1 注解解决跨域
1、注解标识
2、响应头