• ajax跨域问题全解


    1、发生ajax跨域问题的原因:

    (1)浏览器限制;(2)跨域(发出的请求不是本域);(3)XHR(XMLHttpRequest)请求

    2、解决方法:

    (1)给浏览器传置顶的参数,不让浏览器校验;(2)利用JSONP解决

    3、什么是JSONP?

       JSONP是JSON的补充使用方式,不是官方协议,主要利用script标签请求资源可以跨域来解决跨域问题,是一种变通的解决方案。使用JSONP服务器后台是需要做改动的,否则后台还返回json对象前台会报错。

    4、JSONP的弊端:

    (1)服务器需要改动代码支持;

    (2)只支持GET;

    (3)发送到不是XHR请求

    5、普通的ajax请求与JSONP请求的区别:

    (1)普通的ajax请求发出Type是xhr类型,而JSONP发出的Type是script类型,浏览器不会做校验,所以可以解决跨域问题;

    (2)返回类型不同,普通的ajax请求返回的是json对象,而JSONP返回的是js脚本(javascript);

    (3)url:JSONP请求的URL后面自动添加一长串参数。

    6、JSONP实现原理:

      JSONP请求发出时加了callback参数,而后台发现有callback参数就知道这是一个JSONP请求,就会把返回的数据由json变为javascript,而javascript的内容就是一个函数调用。

  • 相关阅读:
    从无到有制作Deb包的一个实例
    Redis内存存储结构分析
    岳麓实践论
    金砖四国(巴西、俄罗斯、印度和中国)
    用LLVM开发新语言
    QQ云输入法
    http://baike.baidu.com/view/1926473.htm
    21世纪商业评论
    update ubuntu to 11.10
    gnu make 中文手册教程pdf
  • 原文地址:https://www.cnblogs.com/mengyage/p/9271995.html
Copyright © 2020-2023  润新知