requests请求django接口跨域问题处理

参考:

https://zhuanlan.zhihu.com/p/416978320

https://blog.csdn.net/SweetHeartHuaZai/article/details/130983179

使用httpx代替requests

bash 复制代码
import httpx

headers = {
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/104.0.0.0 Safari/537.36",
}

res = httpx.get(url='https://www.baidu.com/', headers=headers, timeout=10, verify=False)
print(res.text)

django中添加如下配置:

bash 复制代码
INSTALLED_APPS = [

'corsheaders',

]

MIDDLEWARE_CLASSES = [

'corsheaders.middleware.CorsMiddleware', #这个放到第一位

]

注意:

是MIDDLEWARE_CLASSES 不是MIDDLEWARE,否则不生效。

如果处理后报如下错误:

bash 复制代码
ERRORS:
?: (admin.E408) 'django.contrib.auth.middleware.AuthenticationMiddleware' must be in MIDDLEWARE in order to use the admin application.
?: (admin.E409) 'django.contrib.messages.middleware.MessageMiddleware' must be in MIDDLEWARE in order to use the admin application.
?: (admin.E410) 'django.contrib.sessions.middleware.SessionMiddleware' must be in MIDDLEWARE in order to use the admin application.
        HINT: Insert 'django.contrib.sessions.middleware.SessionMiddleware' before 'django.contrib.auth.middleware.AuthenticationMiddleware'.

处理办法如下(同时添加MIDDLEWARE_CLASSES 和 MIDDLEWARE ):

bash 复制代码
MIDDLEWARE_CLASSES = [
    'corsheaders.middleware.CorsMiddleware',
]

MIDDLEWARE = [
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
]
相关推荐
小鸡吃米…20 分钟前
机器学习中的代价函数
人工智能·python·机器学习
Li emily1 小时前
如何通过外汇API平台快速实现实时数据接入?
开发语言·python·api·fastapi·美股
m0_561359671 小时前
掌握Python魔法方法(Magic Methods)
jvm·数据库·python
Ulyanov2 小时前
顶层设计——单脉冲雷达仿真器的灵魂蓝图
python·算法·pyside·仿真系统·单脉冲
2401_838472512 小时前
使用Python进行图像识别:CNN卷积神经网络实战
jvm·数据库·python
CoLiuRs3 小时前
语义搜索系统原理与实现
redis·python·向量·es
zhihuaba3 小时前
使用PyTorch构建你的第一个神经网络
jvm·数据库·python
u0109272713 小时前
Python Web爬虫入门:使用Requests和BeautifulSoup
jvm·数据库·python
野犬寒鸦4 小时前
从零起步学习并发编程 || 第一章:初步认识进程与线程
java·服务器·后端·学习
Stream_Silver4 小时前
【Agent学习笔记3:使用Python开发简单MCP服务】
笔记·python