javascript - 使用 Javascript 或 Java 进行跨域请求

标签 javascript java jquery cross-domain

我需要在 iframe 或类似的东西中加载一个页面,但是,该页面重定向到另一个域中的登录页面,然后,我遇到了跨域错误!

错误类似于:

Failed to load https://otherdomain.com/159HBR321: Redirect from 
'https://otherdomain.com/159HBR321' to 
'https://thirddomain.com/home/login'
has been blocked by CORS policy: No 'Access-Control-Allow-Origin'
header is present on the requested resource. Origin 'null' is
therefore not allowed access.

我尝试过类似的方法:

$(function(){
  $("#divId").load("https://otherdomain.com/159HBR321"); 
});
...
<div id="divId" style="display:none;"></div>

并尝试使用 iframe:

<iframe src="https://otherdomain.com/159HBR321"></iframe>

我有一个Java项目,所以我可以用Java或JS(JQuery等)解决这个问题。

但是没有成功。只是观察,我无法更改其他域服务器上的任何内容。

有什么线索可以解决这个问题吗?提前致谢。

最佳答案

您的浏览器执行该规则,并且它不应该允许您违反它。 CORS 背后的想法是防止恶意代码从合法应用程序获取凭据,然后访问服务器。

服务器必须发送跨域 header 。如果其他域不这样做,那么您的浏览器将不允许您访问它。

有些浏览器插件可以出于开发目的添加 header ,但它们的功能有限,并且在打开时会降低浏览器的安全性。如果其他人正在使用您的应用程序,那么它们当然不是一个选择。

唯一好的解决方案是与其他域合作,将您的域列入白名单。

关于javascript - 使用 Javascript 或 Java 进行跨域请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51102485/

相关文章:

javascript - 如何查明某些 javascript 代码是否被实际使用?

javascript - E/启动器 - 错误 : TypeError: Cucumber. Cli 不是函数

java - webapp 的 Maven 原型(prototype)

java - 如何在 IntelliJ 社区版中使用 Hibernate?

javascript - Yii - 将 onclick 事件与 CLinkPager 与每个寻呼机链接绑定(bind)

javascript - 如何使用 Javascript/Jquery 添加子元素

javascript - 为什么我应该在 JSX 返回中指定换行元素 : <div> or <React. Fragment> 或 <>?

java - 检查用户输入是否仅是 Java 中的整数

jquery - 如何使div向上滚动并固定在顶部

jquery - 使用 Jsonp 调用跨域 Asp.Net Web 服务