django - 为什么 GET 和 POST 请求转换为 OPTIONS 请求,用于 django rest 框架和 reactjs 前端的跨域请求?
问题描述
我希望通过热点将我的 django 和 reactjs Web 应用程序连接到 mac,并将主机更改为移动设备的 IP 地址,从而在移动设备上运行我的 django 和 reactjs Web 应用程序。因此,我将我的更改localhost
为192.168.43.19
in /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',
)
如果有人可以向我推荐正确的处理方法,这将非常有帮助?
解决方案
推荐阅读
- amazon-web-services - 使用 AWS 保护视频链接
- java - OpenCSV 在解析时抛出错误捕获 CSV 标头
- nestjs - Nest js 打包挂在无服务器框架的构建过程中
- react-native-render-html - 不尊重 fontSize 的元素
- python - 如何重新启动使用套接字的 python 程序?
- emacs - 组织模式 | 如何将一列与另一列相乘并对结果求和?
- stm32 - STM32F4通过UART写内部flash
- python - 图像和帖子仅适用于 Django Admin 而不是常规形式
- javascript - 如果所有这些都以角度传递,数组任务如何
- entity-framework - 使用 Entity Framework Core 和 .net core 3.1 进行自引用连接