zoukankan      html  css  js  c++  java
  • aja如何解决跨域请求?

    一、什么是跨域

    举个例子:http://www.a.com/a.js访问以下URL的结果

    URL说明是否允许通信
    http://www.a.com/b.js 请求地址不同 允许
    http://www.a.com/script/b.js 请求地址不同 允许
    https://www.a.com/b.js 协议不同 不允许
    http://script.a.com/b.js 子域不同 不允许
    http://a.com/b.js 子域不同 不允许
    http://www.b.com/b.js 主域不同 不允许
    http://www.a.com:8000/b.js 端口不同 不允许
    http://70.32.92.74/b.js 域名和域名对应ip 不允许

    跨域结果:浏览器不能执行其他域的脚本(即:浏览器的同源策略造成)

    浏览器控制台报错:

    XMLHttpRequest cannot load http://external-domain/service. No ‘Access-Control-Allow-Origin’ header is present on the requested resource. Origin ‘http://my-domain’ is therefore not allowed access.

    二、为什么要跨域

    Web浏览器针对恶意的代码所进行的措施。安全。

    三、跨域的应用场景

    1、来自 home.example.com 的文档里的脚本读取 developer.example.com载入的文档的属性。(子域不同)

    2、来自 home.example.com 的文档里的脚本读取 text.segmentfault.com载入的文档的属性。(子域、主域不同)

    三、如何跨域

    方式有很多,常用的两种思路:

    1、在服务端设置response header

    2、Jsonp:动态<script>标签,get请求

  • 相关阅读:
    python+selenium初学者常见问题处理
    pycharm的这些配置,你都知道吗
    巧用浏览器F12调试器定位系统前后端bug
    dsu + lca
    indeed2017校招在线编程题(网测)三
    rolling hash
    ac自动机
    indeed 第二次笔试题
    vmware以及schlumberger题解
    2017 google Round C APAC Test 题解
  • 原文地址:https://www.cnblogs.com/cxnian/p/8080655.html
Copyright © 2011-2022 走看看