zoukankan      html  css  js  c++  java
  • 跨域 同源 协议 端口 域名

     

    所谓跨域

      1.就是跨域名,跨端口,跨协议

         例如:如果有两个服务器,服务器A和服务器B,服务器A上存储了php数据,script,甚至是css这些文件,而你在服务器B上只写了html,然后你所在的服务器B上动态创建script,css,php数据(使用ajax请求),向服务器A上请求你想要的script,css,php数请求据(使用ajax)这些文件,请求这些文件后,你再在服务器B上运行你的html,虽然你的地址是在服务器B上,但是你还是可以运行效果与在服务器A上运行的效果是一样的,这样就是跨域名,跨端口,跨协议,实现了跨域。

      简单来说,就是你请求的文件,只要含有“src”,“href”这些属性,你就能在其他服务器上,请求你所需要的文件,然后在自己的服务器上运行,就实现了跨域(跨域名,跨端口,跨协议)。

    原生的动态请求script文件 

      var _script = document.createElement("script");
      _script.src="http://10.9.156.108/html5/Ajax/api/sendMessage.php?user="+_user+"message="+_message;
      _script.type="text/javascript";

    jQuery跨域请求script文件

    $(document).ready(function(){
      //getJSON 后面带参数,如果不带参数默认不跨域 ,带了参数跨域

      //跨域优先
      $.<link rel="icon" href="../img/favicon.ico" type="image/x-icon">("http://10.9.156.108/HTML5/lesson24/test.js?callback=?",[data],function(){});

      //跨域  有getJSON 和 jsonp 两种方式
      $.get("http://10.9.156.108/HTML5/lesson24/test.js=",null,function(){},"jsonp");
       
    });

    所谓同源

      1.就是同域名,同端口,同协议

      例如:如果你有一个服务器A,你所需要的script,css,php文件都在服务器A,你写的html也在服务器A上,然后运行,出现了效果,如果你想在另一台电脑上运行你的项目(注意另一台电脑无论有没有开启服务器,效果还是会显示出来的),只要把你写在服务器A上的协议,域名,端口以及你的项目名称复制下来,在另一台电脑上运行,同样会出现相同的效果,这就实现了同源。

      简单来说,就是你的协议,域名,端口甚至项目名称都一样,不同电脑都能实现同样的效果。

    无论是同台电脑,还是不同台电脑,与是不是同一台电脑没有关系,都能实现跨域和同源。

    什么是协议,域名,端口?

    解释:假如一个网址是  http://baidu.com:8080?user=name&pwd=password

    http://   是协议   

    baidu.com  是域名(注意:前面加上“wwww”即www.baidu.com不是域名)

    8080  是端口    

    user=name&pwd=password   是地址带的参数

  • 相关阅读:
    Codeforces Round #646 (Div. 2)【B. Subsequence Hate题解】
    关于MyBatis常见映射异常
    SQL语句汇总(终篇)—— 表联接与联接查询【转载自https://www.cnblogs.com/ghost-xyx/p/3813688.html】
    SQL语句汇总(二)——数据修改、数据查询【转载自https://www.cnblogs.com/ghost-xyx/p/3798362.html】
    浮动元素引起的问题和解决办法
    PHP 神奇的sprintf函数
    关于this,作用域,属性,原型链的一个小练习
    for...of 与 for...in 区别
    ES6 Promise对象then方法链式调用
    ES6通过WeakMap解决内存泄漏问题
  • 原文地址:https://www.cnblogs.com/onesea/p/13260141.html
Copyright © 2011-2022 走看看