首页 > 解决方案 > 为什么 GET 和 POST 请求转换为 OPTIONS 请求,用于 django rest 框架和 reactjs 前端的跨域请求?

问题描述

我希望通过热点将我的 django 和 reactjs Web 应用程序连接到 mac,并将主机更改为移动设备的 IP 地址,从而在移动设备上运行我的 django 和 reactjs Web 应用程序。因此,我将我的更改localhost192.168.43.19in /etc/hosts/,因此,我的代码很容易在手机和 mac 之间共享,并且我可以在通过热点连接到 mac 的手机上运行 localhost 应用程序。

后端是在 django rest 框架中创建的。问题是django后端创建的api的所有get和post调用都被转换为options调用,因此没有返回,代码不能正常工作。在网上搜索时,它说这个问题是因为默认情况下Access-cross-origin-policy是不允许的。为了尝试处理这个问题,我在 django 应用程序的设置文件中添加了前端 url CORS_ORIGIN_WHITELIST,但它没有用。

设置的CORS_ORIGIN_WHITELIST值是运行反应代码的值。这是


CORS_ORIGIN_WHITELIST = (
    'http://192.168.43.194:3000',
    )

如果有人可以向我推荐正确的处理方法,这将非常有帮助?

标签: djangoreactjsdjango-rest-framework

解决方案


推荐阅读