【问题标题】:CORS - Content-Type and bodysCORS - 内容类型和正文
【发布时间】:2021-12-21 03:55:56
【问题描述】:

我需要一些帮助来理解一个糟糕的 api,有关我正在开发的应用程序的更多背景信息,请阅读我之前提出的另外 2 个问题。我正在使用一个编码错误的预检检查的 api,我无法控制服务器,所以我无法更改它的工作方式,但必须有一种方法来解决这个问题,因为我可以使用 Thunder Client在 VS 代码(它的 POSTMAN 但更糟)以及 reqbin.com 中,这是一个示例:https://reqbin.com/lmtz5jqj 将内容设置为 json,将正文设置为:{"signature":"te20b"}

我不知道为什么我可以在这些服务上将内容类型设置为 applcation/json 并发送请求,但是我在我的本地主机中使用 XMLHttpRequest 执行它不起作用!

任何帮助!

编辑:Chrome 说错误是:CORS: preflightmissingalloworiginheader,如果你想证明我可以链接截图。

【问题讨论】:

    标签: post xmlhttprequest content-type


    【解决方案1】:

    我与一位前端开发人员一起参与了一个项目。作为后端开发人员,我发送 API 以在前端应用程序中使用。在发送 API 之前,我使用 postman 和 Thunder Client 对其进行了测试,它按预期工作。但是,前端开发人员联系我说他无法使用 API。他的错误与您问题中的错误相似。这个问题是由于cors政策。我已经将前端本地服务器域和公司域列入白名单,我非常确定错误不是来自后端 (Django) 代码。为了解决这个错误,我转向服务器(Nginx)并允许进入 POST、PUT 和 DELETE 请求。 API 测试工具并没有被阻止运行这些请求,但是前端 App 被阻止了!您最好联系该后端开发人员。您还可以从您正在使用的浏览器中关闭 cors 策略。这可能会为您解决该错误。

    【讨论】:

    • 嗨,谢谢你的回答,但这并没有真正回答我的问题,因为我无法真正联系后端,这是一个“公共”api,但实际上并没有任何文档,它是设置也很糟糕!
    • @Philip Magyar。在 chrome chrome.google.com/webstore/detail/allow-cors-access-control/… 上查看此扩展程序您可以将其安装在您的 chrome 浏览器上,然后使用它来允许访问 API。
    • 您好,它对我的​​情况并没有真正的帮助,但感谢您提供的工具!任何想法为什么它适用于测试 api 但应用程序不同的工具?是起源不同还是什么?
    • 您好!我能够解决我的问题,由于某种原因,我无法使用 js 代码请求此 api,但是使用 reqbin 生成的 php 代码(我很懒),解决了我的问题 :)
    猜你喜欢
    • 1970-01-01
    • 2012-09-01
    • 2019-08-01
    • 2019-01-29
    • 2015-09-29
    • 2013-09-05
    • 2021-10-31
    • 1970-01-01
    • 2012-06-24
    相关资源
    最近更新 更多