AngularJS 的预检选项请求不适用于 Chrome?

2023-11-30

我使用 AngularJS 托管开发了一个简单的应用程序here。我正在使用我自己在 Laravel 托管中开发的 APIhere。当我尝试使用 Firefox 登录该应用程序时,它工作正常。我的 API 接受飞行前 OPTIONS 请求并以 200 OK 响应。最后,POST 请求生成一个令牌,用户登录。

另一方面,当 Chrome 发送飞行前 OPTIONS 请求时,它会收到 403 返回,并在控制台中给出以下错误:

XMLHttpRequest cannot load http://angulairapi.rohanchhabra.in/auth. Invalid HTTP status code 403

我也尝试通过 Postman REST 客户端在 /auth 上发送 OPTIONS 请求,并且它按预期返回 200 OK。为什么 Chrome 会有这样的表现?我缺少什么?


首先,您必须发送这些标头(通配符有时工作不正确):

Access-Control-Allow-Headers: X-Requested-With, content-type
Access-Control-Allow-Methods: POST, GET, PUT, DELETE, OPTIONS

第二个(也是重要的)从配置中的 AngularJs 服务 $httpProvider 中删除标头:

myApp.config(['$httpProvider', function($httpProvider) {
        $httpProvider.defaults.useXDomain = true;
        delete $httpProvider.defaults.headers.common['X-Requested-With'];
    }
]);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

AngularJS 的预检选项请求不适用于 Chrome? 的相关文章

随机推荐

  • 比较两个图像以检查它们是否相同

    我有一个带有 ImageView 的配置文件视图 用户可以在其中更改他们的图片 我正在保存我的新旧图像以进行比较 我想知道它们是否相同 所以如果是 我不需要将新的推送到我的服务器 我尝试了这个 但它并没有真正起作用 NSData retur
  • 为 tomcat jndi 连接到 postgresql 提供证书

    我想使用 jndi 从 tomcat 中的 servlet 连接到 postgresql 服务器 我已使用将服务器证书添加到信任库中keytool keystore usr lib jvm java 11 openjdk amd64 lib
  • 跨域资源共享 GET:“拒绝从响应中获取不安全标头“etag””

    没有自定义标头的简单 GET 请求 响应按预期返回 正文中的数据是可访问的 但标头则不可访问 当我尝试访问 etag 标头时 浏览器引发异常 拒绝获取不安全标头 etag Chrome Safari 和 Firefox 的行为都是相同的 我
  • 来自networkx的g.nodes()不能与random.choice()一起使用

    我正在尝试在随机节点之间生成随机边 但是代码行ab choice G nodes 正在产生错误 import networkx as nx import matplotlib pyplot as plt from random import
  • 如何将 PHP 变量传递给 Angular js?

    我有一个页面 我在 Angular JS 中进行逆向工程 所有内容都通过 PHP 脚本进行回显 我知道这是不好的做法 但我正在慢慢使用 Angular 只是想将其用于 onBlur 事件 我试图弄清楚如何将变量从 PHP 传递到 Angul
  • 简化 Prolog 中的表达式

    我想问一下如何简化表达式 例如 1 2 a 5 0 b c 0 3 a 5 特别是如何在列表中分离这些表达式 这在 Prolog 中实际上很有趣 因为你不需要做任何太神奇的事情就可以让它工作 X Y 1 2 a 5 0 b c 0 X 1
  • 如何在C语言中解读一个单词并在txt文件中找到它的所有匹配项?

    因此 给定一个最多 7 个字母的字符串 我需要找到该字符串的每个排列 包含和不包含所有字母 然后检查是否可以在我的dictionary txt 文件中找到这些排列中的任何一个 并打印那些排列匹配 所以基本上 如果用户输入 try 排列将是
  • Objective-C 单例对象和全局变量

    我知道有关此主题的其他帖子 但我实际上只是从新手的阶梯上爬升的一个人 所以需要更多帮助 我的 iPhone 应用程序有几个全局变量 其中一些变量是我在类中声明并给定值的 但其他变量需要在登录过程中设置 例如令牌 然后需要可以从任何类访问应用
  • 如何通过 .NET 代码压缩和修复 ACCESS 2007 数据库?

    我需要压缩并修复 Access 2007 accdb 数据库文件 我知道 JRO JetEngine 可以使用 mdb 文件执行此操作 但我需要通过代码修复较新版本的 2007 格式 有什么建议么 EDIT 事情是这样的 我发现我可以使用
  • 有没有办法找到带有标准库的应用程序的路径?

    我想知道是否可以在 Windows 7 下找到具有标准 python 2 7 库的应用程序 例如 MS Excel 的安装目录 我的意思是 它不应该使用任何 pywin32 或 xlrd 等 也许它会查找注册表来找到安装路径 这可能非常棘手
  • 删除图像中的所有水平线和垂直线

    我想删除所有水平和垂直线 但一些小的垂直线没有被删除 添加输入和输出图像以及下面的代码 string ImageUrl C Users Jayant Desktop test images rtaImage tiff Image
  • Next.js defaultLocale 创建到同一页面的两条路由(带前缀和不带前缀)

    根据子路径路由文档对于 Next js i8n 默认区域设置没有前缀 但我的问题是 将其添加到我的 next config js 时 i18n locales en defaultLocale en localeDetection fals
  • 从 LambdaMetafactory 创建 BiConsumer

    我试图通过 LambdaMetafactory 动态创建 BiConsumer 类型的方法引用 我试图应用在https www cuba platform com blog think twice before using reflecti
  • HTTPS 连接 Python

    我正在尝试验证该目标是否公开了 https Web 服务 我有通过 HTTP 连接的代码 但我不确定如何通过 HTTPS 连接 我读过您使用 SSL 但我也读到它不支持证书错误 我得到的代码来自 python 文档 import httpl
  • 无需 jQuery 即可更改元素文本?

    我试图在不使用 jQuery 的情况下更改 div 的内容 我想通过 id 或 class 选择 div 我已经设法让附加工作 function appendHtml targetC htmldata var theDiv document
  • 使用 FFMPEG 从 FPS 不正确的视频和包含每帧时间戳的文件创建具有正确 FPS 的视频

    我有一个从网络摄像头捕获并在 python 中使用 OpenCV 的视频文件 网络摄像头标称 FPS 为 30 FPS 但由于环境的原因 实际 FPS 有所不同 有时可能低至 24 FPS 录制的视频是使用 OpenCV 创建的VideoW
  • 如何使 $_GET 更安全?

    我正在使用 get 方法来执行一些操作 例如批准 标记垃圾邮件 删除 评论系统 我知道走这条路非常不安全 但我无能为力 因为使用 GET 方法的原因是使用 PHP SELF 在页面本身内执行操作 仅供参考 我也使用带有复选框的 post 方
  • 如何优化云Firestore中的读写操作?

    我目前正在编写一个 React Firebase 项目用于学习目的 我想知道我应该采取哪种方法来有效地从 Firebase 中读取数据 说我有这个只读称为产品的集合 其中包含大约 5000 个文档 因此当用户访问我的 React 应用程序时
  • Curl 命令在 bash 脚本中不起作用

    我正在尝试使用 bash 脚本将 JSON 文件上传到我的 noSQL 数据库中 但它不起作用 我不明白为什么 这是脚本 test evaluation none test test command curl XPUT localhost
  • AngularJS 的预检选项请求不适用于 Chrome?

    我使用 AngularJS 托管开发了一个简单的应用程序here 我正在使用我自己在 Laravel 托管中开发的 APIhere 当我尝试使用 Firefox 登录该应用程序时 它工作正常 我的 API 接受飞行前 OPTIONS 请求并