当前位置: 首页 > 知识库问答 >
问题:

跨源请求被阻止:同一源策略不允许读取https://localhost:3000/[duplicate]上的远程资源

谢涵亮
2023-03-14
var cors = require(cors());
app.use(cors());
app.options('*',cors());
var allowCrossDomain = function(req,res,next) {
  res.header('Access-Control-Allow-Origin', '*');
  res.header('Access-Control-Allow-Methods', 'GET, PUT, POST, DELETE');
  res.header('Access-Control-Allow-Headers', 'Content-Type');
  next();  
}
app.use(allowCrossDomain);

有什么办法或者我下一步该怎么做吗?

多谢!

共有1个答案

阚砚文
2023-03-14

三种解决方案,避免CORS问题

  1. 允许CORS到服务器
  2. 使用代理服务器
  3. 使用JSONP

尝试作为以下方式使用

app.use(function(req, res, next) {
  res.header("Access-Control-Allow-Origin", "*");
  res.header("Access-Control-Allow-Methods", "GET, PUT, POST");
  res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
  next();
});
 类似资料:
  • 问题内容: 我正在编写一个简单的网站,该网站以一个成语作为输入,并从牛津词典返回其含义和示例。这是我的主意: 我向以下网址发送了请求: 例如,如果习惯用法是“不走远”,我将请求发送至: 然后将我重定向到以下页面: 在此页面上,我可以提取成语的含义和示例。这是我的测试代码。它将提醒响应URL: 问题是我有一个错误: 跨域请求被阻止:“同源起源”策略不允许读取http://www.oxfordlear

  • 问题内容: 这是我的代码: 这适用于GET请求而不是POST! 我将Apache用作服务器,并使用以下命令对其进行了配置: 在我的angularjs中,我包含在模块应用程序的配置中: 但是请求POST仍然无法正常工作! 我希望有人能提出任何想法。 问题答案: 在服务器端添加这些标头: 如果仍然无法正常工作,请发布浏览器正在发送的预检请求的详细信息。 为什么要这样做? 如果不是简单的请求(例如,表单

  • 问题内容: 我正在网站上使用,最近我的用户在接收邮件时遇到了这个问题。在FireBug中检查后,我意识到脚本失败是由于CORS保护(由于以下错误)所致。 跨域请求被阻止:“同源起源”策略不允许读取http://x3.chatforyoursite.com/subscribe/上的远程资源 。可以通过将资源移到同一域或启用CORS来解决此问题。 现在,我想知道应该在哪里启用CORS,因为在我自己的服

  • 有点晚了,但我记得我最终通过在后端的配置中设置来解决这个问题。 完全偶然地,我注意到如果我在前端的客户端中设置,一切都正常工作。然而,将其切换到不断抛出错误。然后我把两个和两个放在一起,在后端设置,一切都按预期工作。 我的应用程序使用cookie,所以必须这样做。 这可能是重复的,但我没有找到与我的问题相关的线索。 我正在进行以下API调用: 这会引发一个错误: 当我将我的应用程序部署到Herok

  • 我在http://localhost:3000/eData中有数据 当我运行应用程序时,在控制台中,我会收到错误交叉起源请求阻塞:同一起源策略不允许读取http://localhost:3000/edata上的远程资源。(原因:CORS标头“Access-Control-Allow-Origin”丢失)。 如何修复错误.以及如何从其他主机获取数据...请帮助我。