跨域会报40几_关于跨域,以及跨域的几种方式

首先我们来想一想

为什么会有跨域这个名词的出现呢?

跨域又是什么呢?为何要跨域?

浏览器的同源策略又是什么?怎么解决?

jsonp又是什么?

跨域的原理又是什么呢?

名词解释:

跨域:

浏览器对于javascript的同源策略的限制,例如a.cn下面的js不能调用b.cn中的js,对象或数据(因为a.cn和b.cn是不同域),所以跨域就出现了.

上面提到的,同域的概念又是什么呢??? 简单的解释就是相同域名,端口相同,协议相同

同源策略:

请求的url地址,必须与浏览器上的url地址处于同域上,也就是域名,端口,协议相同.

比如:我在本地上的域名是study.cn,请求另外一个域名一段数据

这个时候在浏览器上会报错:

这个就是同源策略的保护,如果浏览器对javascript没有同源策略的保护,那么一些重要的机密网站将会很危险~

study.cn/json/jsonp/jsonp.html

请求地址

形式

结果

http://study.cn/test/a.html

同一域名,不同文件夹

成功

http://study.cn/json/jsonp/jsonp.html

同一域名,统一文件夹

成功

http://a.study.cn/json/jsonp/jsonp.html

不同域名,文件路径相同

失败

http://study.cn:8080/json/jsonp/jsonp.html

同一域名,不同端口

失败

https://study.cn/json/jsonp/jsonp.html

同一域名,不同协议

失败

jsonp:

jsonp 全称是JSON with Padding,是为了解决跨域请求资源而产生的解决方案,是一种依靠开发人员创造出的一种非官方跨域数据交互协议。

一个是描述信息的格式,一个是信息传递双方约定的方法。

jsonp的产生:

1.AJAX直接请求普通文件存在跨域无权限访问的问题,不管是静态页面也好.

2.不过我们在调用js文件的时候又不受跨域影响,比如引入jquery框架的,或者是调用相片的时候

3.凡是拥有scr这个属性的标签都可以跨域例如

4.如果想通过纯web端跨域访问数据只有一种可能,那就是把远程服务器上的数据装进js格式的文件里.

5.而json又是一个轻量级的数据格式,还被js原生支持

6.为了便于客户端使用数据,逐渐形成了一种非正式传输协议,人们把它称作JSONP,该协议的一个要点就是允许用户传递一个callback 参数给服务端,

demo1:基于script标签实现跨域

举个例子:我在http://study.cn/json/jsonp/jsonp_2.html下请求一个远程的js文件

copycode.gif

1

2

3

4

5

Insert title here

6

7

8 var message = function(data) {

9 alert(data[1].title);

10 };

11

12

13

14

15

16

17

18

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/551103.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux用户的配置文件保存在哪里,使用配置文件(.settings、.config)存储应用程序配置...

引言我不知大家早先是如何保存应用程序配置,以备下次打开时使用的,反正我开始学.Net的时候就去研究序列化,以二进制或XML格式的序列化来保存应用程序配置。这样每次都要建立单独的配置类,并书写读写配置代码,相当麻烦。…

4列变成5列 datatable_云南美食界“5巨头”,谁才是NO.1?你家乡的那道菜也在列...

每个城市都有自己盛产的食材,最终也被制作成几代都传延至今的美食,这便是美食的传承。今天小编就来说说云南美食,下面这云南美食界“5巨头”,谁才是你心里的NO.1?你家乡的那道菜也在列哦~云南大理:白族泥鳅…

linux+基因组字符替换,liftover基因组版本直接的coordinate转换

下载地址:http://hgdownload.cse.ucsc.edu/admin/exe/使用方法:【从hg38转到hg19】因为主流的基因组版本还是hg19,但是时代在进步,已经有很多信息都是以hg38的形式公布出来的了。比如,我下载了pfam.df这个protein domain注释文件,…

elinput内容过长显示悬浮框_excel中一直被忽视的名称框,用好了也能提高效率

在excel左上角功能区下方,有一个名称框(下图红框中的部分)。大部分朋友应该没注意过这个地方有什么作用,或者仅仅知道名称框中会显示单元格的位置,因此在操作中这项功能无法表现出其真正的效果。本文就为大家介绍一下关于名称框的一些实用功能…

同步轨道进入过程_“收官之星”定点成功!北斗三号卫星全部进入长管模式

◎ 徐新芳 科技日报记者 付毅飞6月30日14时15分,北斗三号全球卫星导航系统最后一颗组网卫星成功定点于距离地面约36000公里的地球同步轨道,顺利进入长期运行管理模式。卫星有效载荷已完成开通,经过遥测数据判读,星载基准频率合成器…

将当前的head推送到远程_Git 通俗易懂系列 三、远程仓库和标签

远程仓库git remote :列出每个远程库的简短名字。如:origin。git remote -v :显示对应的克隆地址,如:originhttp://gitlab.xxx.corp/xxx.git 添加远程库:git remote add pb git://github.com/xxx.gitpb 指代对应的仓库…

linux中cv调用摄像头,ubuntu中opencv调用摄像头

ubuntu中opencv调用摄像头ubuntu中opencv调用摄像头文章目录一、Ubuntu中安装opencv二、关于Linux如何开启摄像头1.安装VMvareTools,这个是真的强,解决了很多常遇到的问题,比如Linux和Windows无法交互粘贴复制的问题。2.要保证Linux这边能开启…

为什么只有奇次谐波_关于开关电源谐波失真,这有一份测量分析方法经验分享!...

无论是从保护电力系统的安全还是从保护用电设备和人身的安全来看,严格控制并限定电流谐波含量,以减少谐波污染造成的危害已成为人们的共识。总谐波失真THD与功率因数 PF 的关系市面上很多的 LED 驱动电源,其输入电路采用简单的桥式整流器和电…

c语言程序设计平时作业代刷,C语言程序设计——小学生口算刷题系统

程序函数关系图函数功能及全局变量介绍代码中已有详细注释的地方不再进行解释。全局变量Cut( )函数此函数用于分割界面,使界面更为美观。Start( )函数此函数集成了开始菜单,年级的输入,为了营造一个快乐而刺激的刷题体验,程序与用…

机器人出魔切还是三相_工业机器人常见故障和修理方法

机械手常见故障和修理方法 1.先动口再动手对于有故障的电气设备,不应急于动手,应先询问产生故障的前后经过及故障现象。对于生疏的设备,还应先熟悉电路原理和结构特点,遵守相应规则。拆卸前要充分熟悉每个电气部件的功能、位置、连…

matlab 图像显著性检测ft_全局对比度的图像显著性检测算法

点击上方蓝字关注我们星标或者置顶【OpenCV学堂】干货与教程第一时间送达!显著性检测概念显著性就是可以快速引起你注意的对象或者物体,在图像或者视频中显著性检测的结果往往是图像或者视频中对象,在神经学科中显著性检测被描述为注意力机制…

修改所有列_哪些数据库是行存储?哪些是列存储?有什么区别?

大多数数据库系统存储一组数据记录,这些记录由表中的列和行组成。字段是列和行的交集:某种类型的单个值。属于同一列的字段通常具有相同的数据类型。例如,如果我们定义了一个包含用户数据的表,那么所有的用户名都将是相同的类型&a…

cordova 更改app版本_【ios马甲包cps联运】App上架难 马甲包不知道该怎么做?

专业app代上架!解决全网IOS上包难诸多问题 ,提供多类别马甲包功能包定制服务!(直播.财务.社交.生活.游戏.电商)另外提供app加速审核及好评优化服务.长期出售白包功能包!总的来说,App Store 的上架流程,主要分为 7 大步骤:1、创建证…

须使用visual c 内联汇编语言开发,在VisualC 中使用内联汇编

在VisualC 中使用内联汇编2008-04-09 04:08:57来源:互联网 阅读 ()一、内联汇编的优缺点因为在Visual C 中使用内联汇编不需要额外的编译器和联接器,且可以处理Visual C 中不能处理的一些事情,而且可以使用在C/C 中的变量,所以非常…

dockerfile 修改文件权限_网易技术实践|Docker文件系统实战

在本文中,我们来实战构建一个Docker镜像,然后实例化容器,在Docker的生命周期中详细分析一下Docker的文件存储情况和DockerFile优化策略。在开始实战之前,我们先介绍一个概念,联合文件系统(Union File Syste…

stm32c语言写数码管定时器,使用TIM1产生1秒定时控制数码管显示0-9(STM32_10)

一、项目配置1、新建项目文件夹"TimSeg";2、通过Keil5创建新项目,保存在所创建的文件夹中(设项目名为pTimSeg),选择MCU芯片为"STM32F103ZE"(本程序使用的硬件为:STM32-PZ6806L开发板)3、在"TimSeg"…

for循环c语言流水灯,巧用数组与for循环为流水灯程序瘦身

数组——一种储存大量同性质数据的连续存储器空间a [6];b [] {2,4,8,3,6};c[6] {1,2,3,4,5,6};char d[6] "hello";以上方式均是数组创建的常用方式~数组是从…

java的map 使用string数组多了双引号_奥奥奥利给!!!再也不怕面试官问我String源码了!来吧...

简述字符串广泛应用 在 Java 编程中,在 Java 中字符串属于对象,Java 提供了String 类来创建和操作字符串。字符串缓冲区支持可变字符串。因为String对象是不可变的,因此可以共享它们。String类代表字符串,Java程序中的所有字符串字…

C 语言 运算符怎么使用,详解C++编程中运算符的使用

C的运算符十分丰富,使得C的运算十分灵活方便。例如把赋值号()也作为运算符处理,这样,abc4就是合法的表达式,这是与其他语言不同的。C提供了以下运算符:算术运算符(加) -(减) *(乘) /(除) %(整除求余) (自加) --(…

面积积分_袁颖妍:用定理积分求平面区域面积(有代表性的9个例题)

考研竞赛智慧e数学的广告:鸡汤所谓“理解”,所谓“智商”,本质上最终都归到"记忆",还有一点就是能够发现自己“记忆”中各个零散的知识点的关系。所谓“智商”高低的人,其实是强化这些“记忆”的能力的不同,…