uniapp开发app框架在提升开发效率中的独特优势与应用探索
917
2022-12-02
一个js引发的跨域问题
忽然遇上跨域错误。
我们有张页面,使用了EXT.js,在本地运行正常,部署到服务器上,出不来数据。F12调试,提示有跨域错误?
XMLHttpRequest cannot load No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'is therefore not
这应该就是传说中的跨域错误了吧。怎么回事呢?
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,引发了跨域问题。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~