gpt4 book ai didi

azure - 跨域资源共享错误: PreflightInvalidstatus in Azure Application API

转载 作者:行者123 更新时间:2023-12-05 04:46:20 34 4
gpt4 key购买 nike

我有后端 Springboot API 服务,它在 Azure 应用程序网关后面运行。这些 API 正在单页应用程序中使用。 Spring boot API 已针对 CORS 进行了良好配置,并且在理想场景中运行良好。

但是当 Beackendend 服务没有响应/关闭时出现 CORS 错误。我在应用程序网关中设置这些值,以处理预检调用,以防 java 服务无法访问。

Access-Control-Allow-Origin: {http_req_Origin}
Access-Control-Allow-Credentials: true
Access-Control-Allow-Methods: POST, GET, OPTIONS, DELETE, PUT
Access-Control-Allow-Headers: x-requested-with, authorization, content-type, unique-one-time-token
Access-Control-Max-Age: 1800

做了这些重写规则后,仍然出现CORS错误跨域资源共享错误:PreflightInvalidstatus

最佳答案

看看以下任一方法是否可以解决您的情况

  1. 确保代码中的请求 URL 没有缺少尾随斜杠

    例如,您可能需要在代码 - 例如,http://localhost/api/auth/login/或删除斜杠如果存在 http://localhost/api/auth/login 并尝试。

  2. 当您尝试将https服务调用为http时,有时甚至可能会发生这种情况,例如,当您在 :'http://localhost 上执行请求时/api/auth/login ' 可能必须是 'https://localhost/api/auth/login

或者

  • 您需要使用适当的 CORS 回复 CORS 预检 header 来完成这项工作。

    ACORS-预检请求是一个 CORS 请求,用于检查是否CORS 协议(protocol)是可以理解的。它使用OPTIONSmethod包括这些headers .您可能需要回复使用适当的 CORS header 进行 CORS 预检。

  • 引用文献:

    1. Fetch Standard (whatwg.org)
    2. CORS#preflighted_requests
    3. CORS

    关于azure - 跨域资源共享错误: PreflightInvalidstatus in Azure Application API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68862503/

    34 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com