python - 同时使用 Django REST 框架和 Web 套接字
问题描述
我有一个基于 Django 构建的应用程序。最初,我使用 Django REST API 框架构建了一些 API,效果很好。后来,我实现了 Web 套接字来监听服务器。我在端口 5010 上启动了应用程序服务器,该应用程序侦听服务器的套接字是 8010。但是,在实现 Web 套接字之后,我的 API 调用开始失败(下面的屏幕截图)。
观察:我注意到 POST 操作后 API 调用没有失败。失败发生在我在http://127.0.0.1:5010/subscribe/访问 API 的地方。也就是说,当我在浏览器中访问http://127.0.0.1:5010/subscribe/时,我看到了如上图所示的失败。
如果我通过删除 Web 套接字的代码来访问 API http://127.0.0.1:5010/subscribe/ ,则 API 调用工作正常(下面的屏幕截图)
请说明在 Django 中是否可以同时使用 REST API 框架和 Web 套接字。
解决方案
我猜你在你的情况下使用了错误的 HTTP 请求。
在 Response 标头中,允许的 HTTP 请求是POST
和OPTIONS
。但是您正试图GET
通过网络浏览器发出请求。
请尝试提出POST
请求。
推荐阅读
- appium - Appium UI Inspector 加载问题
- sql - 如何在仅从一张表中选择每个月的最高日的情况下连接两张表
- node.js - 我需要 Express 来使用 Nextjs 创建 Web 服务吗?
- tensorflow - GPU 在训练大型数据集期间内存不足
- github - 我们如何在 azure databricks notebook 中访问 github repo 中的文件
- python - 当传递给 websockets.connect() 时,长 uri 是如何工作的?
- javascript - 无法解析火力基地
- android-viewpager2 - ViewPager2.setOffscreenPageLimit 只加载一次页面
- php - 安全密码现在只允许加密密码
- php - $_POST 和 file_get_contents('php://input') 为空