0

我们的应用程序使用 GWT 创建复杂的 UI,但数据由在不同域外部运行的 Coldfusion Web 服务器提供。

该代码在与 Coldfusion 服务器相同的域中编译和部署时工作正常,但在尝试发出跨域 AJAX 请求时在托管模式下运行时会出现此错误。

URLhttp://devxxx/myfile.cfm无效或违反同源安全限制

(注意:在生产中它不会是跨域的,因为编译的代码将驻留在同一个域下,但对于托管模式开发,域是 GWT 的 localhost 和服务器的 devxxxx.com )

在此处输入图像描述

4

4 回答 4

2

不要试图解决安全问题,遵守规则:“从/在”您的开发服务器运行 DevMode。

http://www.gwtproject.org/doc/latest/DevGuideCompilingAndDebugging.html#How_do_I_use_my_own_server_in_development_mode_instead_of_GWT%27s

于 2013-07-24T22:25:06.360 回答
1

当您启动 Google Chrome 时

--disable-web-security

它也不采用相同的原产地政策

在 Chrome 中禁用同源策略

对于 Firefox,您可以使用 Force CORS add on

https://addons.mozilla.org/en-us/firefox/addon/forcecors/

于 2013-07-24T21:45:55.330 回答
1

经过大量研究,在 IE 的本地 Intranet 区域中将安全级别更改为中低为我修复了它。

把这个留在这里,以防有人走这条路:)

在此处输入图像描述

于 2013-07-24T20:04:10.723 回答
0

导致此行为的另一个原因是,如果您的远程服务器位于导致 cors 请求被拒绝的 Web 访问防火墙 (WAF) 后面。

最终奏效的解决方案是通过使用 URL 中的直接内部 IP 来进行 AJAX RPC 调用而不是网站名称来绕过 WAF。

哇。

于 2015-09-16T14:47:04.350 回答