关于跨域这几天的总结

在前端开发中 难免会遇到跨域的问题,尤其是前后端分离的现在,后端如果是运行的服务器上,而前端运行在本地上,那必须要解决的跨域的问题。

下面列了什么情况下,要解决跨域的问题:

URL

说明

是否允许请求

http://a.example.com/ http://a.example.com/a.txt

同域名下

允许

http://a.example.com/b/a.txthttp://a.example.com/b/a.txt

同域名下不同目录

允许

http://a.example.com/http://a.example.com:8080/a.txt

同域名下不同端口

不允许

http://a.example.com/ https://a.example.com/a.txt

同域名下不同协议

不允许

http://a.example.com/ http://b.example.com/a.txt

不同域下

不允许

http://a.example.com/ http://a.foo.com/a.txt

不同域下

不允许

关于如何解决:

jsonp形式,在react中、angular也有针对这一情况来解决的,当然如果要用jsonp的形式,需要后端来配合返回数据的格式,这种情况在传到同一服务器下并不推荐这样做。

如果是传到同一服务器下的话,建议后端配置一个请求头,我用nodejs写的话,只需要配置一段话就可以了:

app.all('*', function(req, res, next) {

res.header("Access-Control-Allow-Origin", "*");

next();

});

这段话的意思,设置请求允许任何域名的请求。

以上是个人见解,本人入前端的时间不过1年,如有错误也请指正。关于以上内容如果有疑问可以下方留言;

关于此demo的例子,可以查看个人github:

https://git.oschina.net/kaykie/gerenceshikuayue

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏北京马哥教育

Linux架构之HA配置

简介 通过安装该Linux-HA软件,可以实现Linux双机系统的高可用性解决方案,实现双机系统的热备份,并能够做到双机之间的无缝切换,从而对外 提供稳定可靠...

2617
来自专栏C语言及其他语言

几张趣图助你理解HTTP状态码~

HTTP状态码(图一): ? 注释: 301—永久移动。被请求的资源已被永久移动位置; 302—请求的资源现在临时从不同的 URI 响应请求; 305—使...

3266
来自专栏Java学习123

如何修改tomcat的默认端口号

2726
来自专栏电光石火

windows server 2008解决无法PING通问题

今天安装服务器(server 2008),配置完IP地址后,发现局域网其它电脑无法PING通服务器,测线仪测试链路都正常,网线接别的电脑也正常,以为是网卡问题,...

1937
来自专栏北京马哥教育

使用Fabric部署网站应用

以前一直用rsync同步代码到服务器,这种山寨方法用一次两次还可,每天部署10次就麻烦了,最近抽空研究了一下Fabric,发现这个东西部署起来简直太爽了。 Fa...

2815
来自专栏逸鹏说道

Web前端性能优化教程02:添加Expires头和压缩组件

本文是Web前端性能优化系列文章中的第三篇,主要讲述添内容:加Expires头。完整教程可查看:Web前端性能优化 什么是Expires头? Expires存储...

3489
来自专栏java工会

常见HTTP请求错误码大全

923
来自专栏后台及大数据开发

Linux开机执行指定shell

1.需要在/etc/init.d/目录下建立对应的shell脚本,示例如下: 开机启动docker-compose中的所有容器

742
来自专栏学海无涯

Java Web之Cookie和Session的理解

Cookie和Session.jpg 日常现象 登录了某个网站,过一会儿再登录,诶,不用输入密码了,直接是登录状态了,好神奇~~~ 在某网站看了一部手机,接下来...

2733
来自专栏Java技术栈

干货 | 彻底弄懂 HTTP 缓存机制及原理

Http 缓存机制作为 web 性能优化的重要手段,对于从事 Web 开发的同学们来说,应该是知识体系库中的一个基础环节,同时对于有志成为前端架构师的同学来说是...

1463

扫码关注云+社区