一个JS引发的跨域问题
忽然遇上跨域错误。
我们有张页面,使用了EXT.js,在本地运行正常,部署到服务器上,出不来数据。F12调试,提示有跨域错误?
XMLHttpRequest cannot load http://192.168.0.22:8080/cas/login?service=http%3a%2f%2f192.168.0.22%2fGJ.W…El%3d0%26numberfield-1024-inputEl%3d20%26page%3d1%26start%3d0%26limit%3d20. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://192.168.0.22' is therefore not allowed access.
这应该就是传说中的跨域错误了吧。怎么回事呢?
http://192.168.0.22:8080/cas,这个网址一望就知,是个单点登录网址(以下简称为SSO站点)。而我们这个页面是部署在站点A下。难道要在SSO下进行配置?想到这里,我感到一阵恐惧。因为SSO是用java弄的,搞死人。
但很快就否定了这个原因。因为类似的页面部署在站点B下,也是用SSO来登录,却不见有啥问题。
难道问题出在站点A下?翻遍了各种配置,没发现有啥问题。
后来想起,这个页面用到了EXT.JS,而这个EXT.JS的各种JS文件,都部署在一个虚拟目录里,而这个虚拟目录,则属于站点B。应该就是这个原因吧,删除这个虚拟目录,重新部署到网站根目录下,与站点A、B并列,如图,问题解决。
我猜测是EXT.JS引起了跨域错误。对于B来讲,它在自己域下,没问题;而对于A来讲,不同域(严格来说,是不同子域),请求不同域下的JS,引发了跨域问题。
一个JS引发的跨域问题的更多相关文章
- js中各种跨域问题实战小结(二)
这里接上篇:js中各种跨域问题实战小结(一) 后面继续学习的过程中,对上面第一篇有稍作休整.下面继续第二部分: -->5.利用iframe和location.hash -->6.windo ...
- js中各种跨域问题实战小结(一)
什么是跨域?为什么要实现跨域呢? 这是因为JavaScript出于安全方面的考虑,不允许跨域调用其他页面的对象.也就是说只能访问同一个域中的资源.我觉得这就有必要了解下javascript中的同源策略 ...
- JS中实现跨域的方法总结
今天早上在地铁看了点基础知识的考察题,看到了一个JS跨域的问题,仔细想了想自己脑子里竟然只剩下jsonp跨域和用nginx反向代理进行跨域,想着还有别的几种方法,就是想不起来,这个人呢,一上岁数这个脑 ...
- vue.js学习之 跨域请求代理与axios传参
vue.js学习之 跨域请求代理与axios传参 一:跨域请求代理 1:打开config/index.js module.exports{ dev: { } } 在这里面找到proxyTable{}, ...
- Jsonp的js实现,跨域请求,同源策略机制
Jsonp的js实现,跨域请求,同源策略机制1.跨域请求:请求URL的协议,域名,端口三者之间任意一个与当前页面地址不同即为跨域 存在跨域的情况: 网络协议不同,端口不通,域名不同,子域名不同,域名和 ...
- 【JS】AJAX跨域-被调用方与调用方解决方案(二)
解决跨域问题 跨域问题说明,参考[JS]AJAX跨域-JSONP解决方案(一) 实例,使用上一章([JS]AJAX跨域-JSONP解决方案(一))的实例 解决方案三(被调用方支持跨域-服务端代码解决) ...
- 001_Three.js中的跨域问题
001_Three.js中的跨域问题 [情景描述]: 在初始化模型,引入字体和纹理皮肤图片的时候,由于跨域问题,出现了以下提示: Access to image at 'file:///F:/User ...
- 好程序员分享Web前端面试题汇总JS篇之跨域问题
为什么80%的码农都做不了架构师?>>> 好程序员分享Web前端面试题汇总JS篇之跨域问题,接着上一篇文章我们继续来探讨web前端面试必备面试题. 跨域解决方案 1. 通过jso ...
- JS window.name跨域封装
JS window.name 跨域封装 function CrossDomainName(target, agent, callback, security) { if (typeof target ...
随机推荐
- django实现github第三方本地登录
1.安装 pip install social-auth-app-django 2.生成Client ID和Client Secret 3.修改setting.py INSTALLED_APPS = ...
- JavaScript中的内置函数
JavaScript中的内置函数 制作人:全心全意 在使用JavaScript语言时,除了可以自定义函数之外,还可以使用JavaScript的内置函数,这些内置函数是由JavaScript语言自身提供 ...
- js 异步编程方案
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Promise http://www. ...
- Django关于SQL注意事项
执行原生SQL: from django.db import connection, connections cursor = connection.cursor() cursor.execute( ...
- sql语句中嵌套2层循环
declare @year intdeclare @month intset @year=2008 while(@year<=2011)beginset @month=1while(@month ...
- bzoj4568 [Scoi2016]幸运数字 线性基+树链剖分
A 国共有 n 座城市,这些城市由 n-1 条道路相连,使得任意两座城市可以互达,且路径唯一.每座城市都有一个 幸运数字,以纪念碑的形式矗立在这座城市的正中心,作为城市的象征.一些旅行者希望游览 A ...
- type和metaclass元类
元类type 1. 创建类的两种方式 (都是由type元类创建) 方式一: class Foo(object): # 默认metaclass = type, 当前类, 由type类创建 a = 'aa ...
- 洛谷——P3119 [USACO15JAN]草鉴定Grass Cownoisseur
P3119 [USACO15JAN]草鉴定Grass Cownoisseur 题目描述 In an effort to better manage the grazing patterns of hi ...
- Atom编辑Markdown文件保存后行尾的空格自动消失的问题解决
Markdown文件的行尾增加两个空格表示一行结束需要换行. 但保存文件后,行尾的空格自动消失,导致不换行. 解决方法: 1.[Edit]->[Preferences]->[Package ...
- Java描述符(修饰符)的类型
以下内容引用自http://wiki.jikexueyuan.com/project/java/modifier-types.html: 描述符(修饰符)是添加到那些定义中来改变他们的意思的关键词.J ...