405 尽管 CORS 仍不允许方法

2023-11-24

我正在尝试使用 Angular 开发前端应用程序。由于我添加了授权标头对于 HTTP POST 和 GET 请求,我得到405 不允许的方法,尽管我似乎允许服务器端的一切。

enter image description here

我的 Chrome 浏览器中的调试器说它要求Access-Control-Request-Method: POST and Access-Control-Request-Headers: authorization,我的后端允许两者,access-control-allow-methods: GET, POST and access-control-allow-headers: authorization, 也access-control-allow-credentials: true.

我不明白我在这里缺少什么。服务器是一个node.js Express服务器,标头设置如下:

res.setHeader('Access-Control-Allow-Origin', '*');
res.setHeader('Access-Control-Allow-Methods', 'GET, POST');
res.setHeader('Access-Control-Allow-Credentials', 'true');
res.setHeader('Access-Control-Allow-Headers', 'authorization');

前端代码(Angular 5)如下所示:

this.http.request('post', apiUrl, {
  headers: new HttpHeaders().set('Authorization', 'Bearer abc'),
}).subscribe(response => {
  // some code
});

Where this.http是 Angular 的一个实例HttpClient.

我的前端应用程序由我的本地主机域提供服务“http://frontend.localhost/应用程序”,我的后端服务器位于“http://backend.localhost".

我的问题是,我是否缺少一些必须在后端设置的标头?我需要在前端应用程序中设置一些选项吗?


我发现我的问题是not与 CORS 直接相关。我的后端目前只是一个 GraphQL 服务器,它允许 GET 和 POST 请求。

如果我在客户端添加其他标头,浏览器将通过预检检查 CORSOPTIONS请求,到 GraphQL 服务器所在的 URL。这导致405 不允许的方法 GraphQL 服务器产生的错误,而不是通过 Express 或浏览器。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

405 尽管 CORS 仍不允许方法 的相关文章

随机推荐

  • 检查 np.array 是否类似于日期时间的一致方法

    我正在进行一些单元测试 我需要确保函数始终返回类似 np datetime64 的对象 但是 它们可以是任何单位 年 日 纳秒等 我试过了 comp function returns datetime array inp assert is
  • Mongoose模型与Sinon的存根保存实例方法

    我正在尝试使用 Mongoose 模型测试用于保存小部件的服务功能 我想在我的模型上删除保存实例方法 但我找不到一个好的解决方案 我看过其他建议 但似乎没有一个是完整的 See this and this 这是我的模型 widget js
  • 尝试编译时出现 QT 未定义引用错误

    我在 QT 项目中添加了一个 IcecastServer 类 将头文件添加到 pro 文件中 并添加了一些代码 每次编译都会出现以下错误 release icecastserver o icecastserver cpp text 0x39
  • css3动画/过渡/变换:如何使图像变大?

    我想让我的图像高度增长到 1500px 希望宽度会自动调整大小 如果没有 我也可以轻松设置它 我正在使用 jquery animate 但它对我来说太不稳定了 我知道我可以使用 webkit transform scale 2 但我希望将其
  • 如何改变函数中变量的作用域?蟒蛇[重复]

    这个问题在这里已经有答案了 这似乎是一个非常愚蠢的问题 但我对 Python 中的范围规则感到困惑 在下面的示例中 我将两个带有值的变量 x y 发送到一个应该更改其值的函数 当我打印结果时 变量没有改变 def func1 x y x 2
  • 如果页面中有错误,则重定向到自定义错误页面

    我是新来的PHPWeb开发 我想知道 PHP 中是否有任何代码可以将我重定向到页面 我们将其命名为 myerrorpage php 页面上是否有错误 In JSP可以使用以下代码 我想知道上面有没有JSPPHP 中的代码类型 是 那么请帮忙
  • django:根据条件排除某些表单元素

    我有一些表单字段 我想根据是否满足特定条件来包含 排除这些字段 我知道如何包含和排除表单元素 但是当我希望它的元素根据函数的结果显示时 我很难做到这一点 这是我的表格 class ProfileForm ModelForm this tea
  • AWS EC2 究竟如何计算每小时成本?

    简单的问题 如果我有六个相同的 EC2 实例处理数据正好十分钟然后关闭 我会被收取六个小时还是一小时的费用 Update EC2 和 EBS 现在基于使用情况下降到第二个 旧答案变更的粒度精确到小时 来自 AWS 定价网站http aws
  • Blazor Checkbox双向绑定和更改事件

    绑定复选框并在该复选框更改时触发事件的正确方法是什么 我尝试了几种不同的方法 但都没有完全按照我的希望工作 请注意 该复选框位于组件中
  • 如何将sender参数传递给system.timers.timer

    如何将sender参数传递给system timers timer在 NET 中 timer1 timer new System Timers Timer interval timer1 timer AutoReset true timer
  • 如何使用 R 从 MATLAB 序列日期数字中提取时间?

    我有一些需要在 R 中使用的 MATLAB 序列日期号 但我必须将它们转换为正常日期 Matlab datestr 733038 6 ans 27 Dec 2006 14 24 00 你可以看到它给出了日期和时间 Now we try in
  • 如何将字符串转换回列表

    我有一个清单 ab 1 2 a b c I did strab str ab So strab现在是一个字符串 我想将该字符串转换回列表中 我怎样才能做到这一点 最简单和最安全的方法是使用ast literal eval import as
  • Firebase:提供的存储桶与 Swift 中当前实例的存储桶不匹配

    我有以下代码 let storageRef FIRStorage reference forURL gs slugbug appspot com dots intentional let imageRef storageRef child
  • React useContext() 性能,自定义钩子内的 useContext

    我使用了一个结构反应钩子 它是基于全球Context包含减速器的组合 如 Redux 中 另外 我广泛使用定制挂钩来分离逻辑 我有一个包含异步 API 请求的钩子 它变得相当麻烦 我有机会将该钩子的几乎每个函数拆分为其他钩子 但每个函数都使
  • ADB 命令切换不会保留活动开发人员选项设置,但没有实际效果

    正如标题所说 如果我发出以下命令 adb shell settings put global always finish activities 1 如果我转到 开发人员选项 我可以看到切换从 关闭 更改为 打开 还 adb shell se
  • 列出 SQL Server 2005 中哪些列具有全文索引

    如何列出数据库中具有全文索引的所有表 列 select distinct object name fic object id table name name column name from sys fulltext index colum
  • 使用 Amazon RedShift 透视表

    我在 Amazon RedShift 中有多个表 它们遵循多个维度列和一对指标名称 值列的模式 DimensionA DimensionB MetricName MetricValue dimA1 dimB1 m1 v11 dimA1 di
  • 在 ruby​​ 中使用 sjcl.js 创建的 AES 解密

    您好 让我们假设客户端有一个密钥 该密钥不通过与加密数据相同的通道传输 我想要完成的是解密结果斯坦福 Javascript 加密库 sjcl 在红宝石中 或者对于具有支持 AES 的加密库的任何其他语言的概括 这是我在 javascript
  • ?#iefix 如何解决 IE6-IE8 中的网页字体加载问题?

    网上有很多这样的文章 http www fontspring com blog fixing ie9 font face problems建议添加一个 iefix到 eot 网址 我很想知道how这能解决问题吗 谢谢 IE8 及更早版本的
  • 405 尽管 CORS 仍不允许方法

    我正在尝试使用 Angular 开发前端应用程序 由于我添加了授权标头对于 HTTP POST 和 GET 请求 我得到405 不允许的方法 尽管我似乎允许服务器端的一切 我的 Chrome 浏览器中的调试器说它要求Access Contr