• json与jsonp小结


    json

    1. json 的值可以是下面这些类型:

    ① 数字(整数或浮点数),比如123,1.23
    ② 字符串(在双引号中)
    ③ 逻辑值(true 或 false)
    ④ 数组(在方括号中)
    ⑤ 对象(在花括号中)
    ⑥ null

    2. json解析方法

    ① eval('(' + jsondata + ')' ); 使用时永远是不安全的,代码注入
    ② JSON.parse(jsondata);
    JSONLint json:字符串校验工具

    3. jQuery 实现ajax

    jQuery.ajax([settings])
    type :类型
    url :发送请求的地址
    data :是一个对象,连同请求发送到服务器的数据
    dataType :预期服务器返回的数据类型,如果不指定,jQuery 将自动根据HTTP包MIME信息来智能判断,一般我们采用json 格式,可以设置为”json”
    success :是一个方法,请求成功后的的回调函数,传入返回后的数据,以及包含成功代码的字符串
    error :是一个方法,请求失败时调用此函数。传入 XMLHttpRequest 对象

    jsonp

    跨域

    一个域名地址的组成:
    http://www .abc.com :8080 / scripts/jquery.js
    协议://子域名. 主域名 :端口号 / 请求资源地址
    当协议、子域名、主域名、端口号中任意一个不行同时,都算作不同域
    不同域之间相互请求资源,就算作“跨域”

    javascript 出于安全方面的考虑,不允许跨域调用其他页面的对象。
    什么是跨域呢? 简单的解释就是因为javascript同源策略的限制,a.com 域名下的js无法操作b.com 或是 c.a.com域名下的对象

    处理跨域方法:
    —— 代理(属于后台技术)比如在北京的web服务器的后台来调用上海服务器的服务,看然后再把响应结果返回给前端,这样前端调用北京同域名的服务器就和调用上海的服务效果相同了。
    —— JSONP
    a域名去声明,b域名去调用
    注意:JSONP只能用于GET 请求,不支持POST请求(局限性)
    —— XHR2
    HTML5 提供的XMLHttpRequest Level2 已经实现了跨域访问以及其他的一些新功能
    IE10 以下的版本都不支持
    在服务端做一些小小的改造即可:
    header("Access-Control-Allow-Origin:"); * 表示所有的服务器都可以访问,也可以替换成特定的域名,比如说:服务器在上海,换成北京服务器的域名,这样只有从北京的域名才可以访问
    header("Access-Control-Allow-Methods:POST,GET");

    本文链接:http://www.cnblogs.com/xsilence/p/5774606.html

  • 相关阅读:
    08_CSS3简单入门——样式表、选择器
    07_html5简单入门——主体结构元素、非主体结构元素
    06_html5简单入门——框架、可编辑列表、隐藏列表、拼写检测、全局属性
    05_html5简单入门——样式表、块
    Python-容易想不起来的东东
    DNS服务和Bind,bind编译安装,CDN介绍
    逻辑卷管理器LVM
    RAID磁盘阵列
    磁盘管理和文件系统
    软件包管理
  • 原文地址:https://www.cnblogs.com/xsilence/p/5774606.html
Copyright © 2020-2023  润新知