49.Python-web框架-Django解决多语言redirect时把post改为get的问题

目录

1.背景

2.思路

[3.寻找 Find and Replace](#3.寻找 Find and Replace)

4.再次运行程序,POST来了

5.小结


1.背景

昨天在练习一个Django功能时,把form的method设置为POST,但是实际提交时,一直是GET方法。最后发现这是与多语言相关,django前面的多语言设置,会自动加上语言的路径,从而有了重定向这个操作,把POST变成了GET。

2.思路

对于昨天的问题,今晨继续搜索,找到一篇相关的博文,

记录一次nginx重定向以后POST请求变为GET请求的解决【转发】_302重定向成get请求-CSDN博客

这里面提到:

有缓存的301和308,浏览器在接收一次重定向以后,会缓存重定向的地址,以后请求会直接访问重定向的地址;
同时301-302-303的重定向会将请求方法改为使用GET请求
而308-307不会,所以我将nginx的重定向更改为307

3.寻找 Find and Replace

使用Find and Replace这个小工具,可以搜索文件内容,非常好用。

打开response.py文件,搜索302

修改并保存:

4.再次运行程序,POST来了

5.小结

  • 修改源码这种事,尽量少做。必要的时候,还是得做。
  • 博文记录,随时记录,如果没有其他人的博文,也很难找到思路。
相关推荐
小小张说故事9 分钟前
Python 里 `is` 和 `==` 到底差在哪?5 个让你怀疑人生的案例 + 对照表
python
XLYcmy1 小时前
PDF 论文处理器 — 改进方向与建议文档
python·pdf·llm·agent·dify·rag·harness
青柠之夏cc1 小时前
前端拖拽功能原生实现,不引入拖拽库完成业务
开发语言·前端·python
曾晓森1 小时前
OpenAI 兼容 API 接入山猫云:先核对分组和价格,再发最小请求
网络·python
OKkankan1 小时前
Python 高阶语法(一):高阶函数、闭包、lambda 与 functools——从底层真正理解装饰器
开发语言·python
geovindu1 小时前
rust: Facade Pattern
开发语言·后端·设计模式·rust·外观模式
智鸟科技GemeOpen开发者智能设备2 小时前
平安校园 AI 智能实时告警系统 智鸟科技·GemeOpen + 谷华科技·融合创新方案白皮书
java·开发语言·python·物联网·智能家居
Sand(ContextGate)2 小时前
Python Agent 测试实战:测试与评估,让 Agent 像传统软件一样可交付
前端·javascript·python·microsoft·ai
颜进强2 小时前
20 · NestJs循环依赖与 forwardRef:容器为什么在环面前会死,"占位再补齐"怎么救
前端·后端·ai编程
颜进强2 小时前
19 · NestJs @Global 落地账:装饰器与 `isGlobal` 参数,各在什么场景上岗
前端·后端·ai编程